2012-07-08 22 views
0

下午好,每個人。在PHP中運行Javascript的問題

我有一個持續的問題,下面的代碼。我知道Javascript/JQuery和JSON工作正常,正如這裏展示的 - http://jsfiddle.net/Dvpmy/13/

我也知道,當我嘗試回顯JavaScript時省略了PHP工作正常。但是,當我將所有內容組合在一起時,我似乎遇到了問題。 Chrome瀏覽器正在標記「意外標識符」,Firefox認爲在一個參數後面有一個缺失的圓括號。我無法找到和補救。

<html> 
<head> 
<script type="text/javascript" src="/Portfolio/jquery.js"></script> 
<?php 


mysql_connect(localhost,"user","password"); 
@mysql_select_db("database") or die("Unable to select database"); 
$query="SELECT * FROM quote WHERE view='yes'"; 
$result=mysql_query($query); 
$num=mysql_numrows($result); 
mysql_close(); 
$i=0; 
while ($i < $num) { 

$ID=mysql_result($result,$i,"ID"); 
$EPIC=mysql_result($result,$i,"EPIC"); 

echo '<script type="text/javascript">'; 
echo'$.getJSON("http://query.yahooapis.com/v1/public/yql?  q=select%20*%20from%20yahoo.finance.historicaldata%20where%20symbol%20%3D%20%22DES%22%20and%20startDate%20%3D%20%222009-09-11%22%20and%20endDate%20%3D%20%222010-03-10%22&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=?", function(data) { console.log(data); var info = data.query.results.quote[0].Close; var date = data.query.results.quote[0].Date; var high = data.query.results.quote[0].High; $("div.quote").html("Test" $ID <br> $EPIC <br> high); });'; 
echo '</script>'; 


$i++; 
} 

?> 
</head> 
<body><div class='quote'></div></body></html> 

我想提前道歉,如果解決方案明顯。所有的援助將受到感謝。

非常感謝。

+1

您還最好在'$(document).ready()'內包裝'$ .getJSON'調用,因爲在您調用這個元素時,元素還不存在。 – 2012-07-08 12:05:33

回答

3

什麼,立刻跳出來是正確的的JavaScript塊的結尾:

一切後​​
$("div.quote").html("Test" $ID <br> $EPIC <br> high); 

是引號外,並會引發錯誤。

+0

啊,是的。這似乎導致了這個問題。乾杯。 '$(「div.quote」)。html(「」+ high +「」);' 這似乎允許我顯示JS變量。有沒有一種直接的方式可以顯示通過PHP定義的變量? – 2012-07-08 12:34:38

+0

這可能是SO上最常問到的問題。 http://stackoverflow.com/search?q=Passing+a+value+from+PHP+to+JavaScript – JJJ 2012-07-08 12:55:11

+0

可愛。謝謝。 – 2012-07-08 13:01:24