2013-08-07 61 views
0

我有這個代碼的html:變量從PHP爲Javascript

<a id="<?echo $result[id]?>" onclick="displayResult()"></a> 

,我希望得到這個身份證號碼從鏈接不刷新頁面,這個功能:

<script> 
function displayResult() 
{ 
<? 
connection = mysql_connect('localhost', 'root', '...'); 
$db = mysql_select_db('webfaturas', $connection); 
$sql = mysql_query("SELECT * FROM `artigos` WHERE id = $id"); 
$resultado = mysql_fetch_array($sql); 
?> 
</script> 

這樣我就可以在不刷新頁面的情況下執行sql查詢WHERE id = id。

+3

你知道有一種叫做Ajax的想法..... – Hackerman

+0

你所做的只會在頁面加載期間獲取值,並且在執行期間根本不會改變,你需要Ajax來做你想做的事情 – skv

+0

這段代碼不會引入SQL注入的安全風險嗎? –

回答

1

你想要做的是通過JavaScript獲取鏈接的ID,並使用AJAX將其發佈到你的PHP腳本。 jQuery使這比使用直接的JavaScript更容易 - 我建議閱讀文檔。 http://api.jquery.com/jQuery.post/

0

就像評論所說,使用ajax來得到你需要的是最好的方式來做到這一點。

Wikipdia說:http://en.wikipedia.org/wiki/Ajax_(programming) TL;博士

基本上你讓使用JavaScript和你收集的任何數據到另一個頁面調用。它會返回某種數據結構(通常是JSON或XML)

然後渲染結果。

那是簡單的方法來做到這一點。

(我知道互聯網絡會恨我這個)jQuery有一個功能,只是因爲它稱爲AJAX

0

像其他人所說,AJAX是去對此的最佳途徑。

jQuery提供了最簡單的方法來做到這一點。

發送ID到一個PHP頁面使用jQuery的$.ajax功能,即使用$_GET["id"]$_POST["id"]獲取數據,這取決於你如何發送AJAX,做你的SQL查詢,然後發送一個響應返回給瀏覽器(如果它是一個正常的網頁,使用echo)。