PHP代码在JavaScript中不起作用

时间:2014-01-26 08:55:14

标签: javascript php

我有这个PHP代码:

<?php

    $myVar=$_GET['MyVar'];
?>

然后,在我的javascript中,我写道:

var p="<?php echo $myVar;?>";

window.open("./myurl.php?MyVar="+p,"_self");

但它的PHP代码被忽略并读取就像它是一个简单的字符串,所以我的网址是:

./myurl.php?MyVar=<?php%20echo%20$myVar;?>

我的错误在哪里?

3 个答案:

答案 0 :(得分:0)

你的脚本文件必须是.js.php才能工作,或者你必须在.php文件中写这个脚本
如果你想使用.js.php文件添加header("Content-type: text/javascript")
好运

答案 1 :(得分:0)

只需要问。您从$myVar获得的价值不包含任何权利? 如果您的变量使用任何类型的特殊字符,您还应该使用json_encode(),如下所示:

var p = <?php echo json_encode($myVar); ?>;

答案 2 :(得分:0)

另一招你 如果您使用的是插入HTML(而不是MVC或模板​​)的简单PHP,但您的.js文件与.php文件是分开的,您还可以使用以下技巧:

1-在P​​HP中:

$myVar = $_GET['MyVar'];

echo "<script>var p = \"{$myVar}\";</script>";

因此,您将创建(打印)一大块Javascript,它将初始化变量。

2-在JavaScript中

window.open("./myurl.php?MyVar="+p,"_self");

所以你只是使用它,它已经存在了。