2013-03-21 77 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將忽略所有內容。