2013-03-21 90 views
0

这很简单,我似乎无法找到答案的问题。 我有main.php页面顶部的test.php。 test.php包含php内部的jQuery代码,它全部包装在脚本标签中。我能够包含该文件并使用包含文件的jquery? 目前不工作,但我可能做错了什么。 问题是我能做的包括或我必须有main.php页面上的脚本标签。 谢谢 希望这是有道理的。PHP内部jQuery的包含文件

  <?php $query = mysql_query("SELECT * FROM table WHERE id = 1"); 
      $row = mysql_fetch_assoc($query); 
      $result = $row['result']; 


?> 
<script type="text/javascript"> 

     var result = '<?php echo $result ?>'; 
    $(document).ready(function(e) { 

$("#div td:contains(" + result + ")").addClass('greenborder'); 

}); 
    </script> 
+1

请张贴不工作的代码。 – 2013-03-21 19:52:52

+1

你是什么意思? PHP包含或HTML“包含” – ITroubs 2013-03-21 20:03:18

回答

1

我看到你要回声$的JavaScript代码..和你正在做的方式内部结果就好了..如果你什么也得不到代替$导致在执行他们也许变量$ result是空的。 。尝试var_dump($result);只是在你的代码,看看它包含$result = $row['result'];以后。

+0

感谢您的期待。我这样做,并得到我想要得到的字符串。我只是想知道,如果PHP与jQuery混合在一起的代码正在运行的确切页面,或者如果我不能从一个不同的PHP文件包含它。 – Ricky 2013-03-21 20:04:13

+1

是的,你可以使用PHP包括()以包括其他PHP文件的PHP文件(其中还可能包含的JavaScript/jQuery的)..只是确保你包括文件你使用任何变量的..你可以只包括前内另一个PHP文件(而不是在一个.js文件)的PHP文件 – 2013-03-21 20:05:36

+0

好的,谢谢你的帮助...虐待保持刻苦攻读,看看我想出。谢谢 – Ricky 2013-03-21 20:09:39

0

我假设你有somethingl这样的:

<?php 
    $some_stuff = 'whatever'; 
?> 
<html> 

<head> 
    <script> 
     $(document).ready(function() { 
       <?php some_php_code(); ?> 
     }); 
etc... 

如果是这样,那么PHP代码块的所有将被服务器执行,并不会使它的客户端。你不能在JS代码块中嵌入原始的PHP代码,并在客户端执行PHP。这就要求你的所有网站的用户在他们的机器上安装完整的PHP,以及你正在使用的任何额外的库等等......例如......永远不会发生。

记住... PHP没有其他语言的概念。它不会评估Javascript并且只执行符合JS条件的PHP块,例如

<script> 
if (true) { 
    <?php code_for_true(); ?> // PHP will execute this 
} else { 
    <?php code_for_false(); ?> // this will ALSO by executed by php 
} 

这两个函数都会被执行,因为PHP对JS没有任何概念。请记住,没有这样的东西作为PHP脚本“文件”。只有其他文件嵌入了PHP代码块。除了由<?php ?>标签包围的内容外,PHP将忽略所有内容。