2013-10-07 50 views
1

目前,我使用這個jQuery代碼把HTML從另一個文件爲內容的div如何使用MySQL數據庫把HTML到一個div

$("#list li a").click(function(){ 
var id = this.id; 
$('#content').fadeOut('fast', function(){ 
    $.ajax({url:"./html/" + id + ".html",success:function(result){ 
    $("#content").html(result); 
    }}); 
}); 

$('#content').fadeIn('fast'); 
}); 

它是從錨標籤從拉動ID這個名單

<ul id='list'> 
<li><a href="#" class="nav" id="home">Home</a></li> 
<li><a href="#" class="nav" id="order">Order Form</a></li> 
</ul> 

該數據庫將有一個表名爲名爲列其中包含需要被加載到div的,實際的HTML代碼「內容」「HTML」。

如何使用錨標記中的ID來獲取具有HTML代碼的對應行,並將其顯示在內容div中?

編輯:因此,我想通了,這將是我的查詢:

$result = mysqli_query($con,"SELECT content FROM htmlcontent WHERE id='' "); 

我現在的問題是,如何我通過在HTML頁面的PHP函數Ajax調用的ID,並如何返回$結果並將其顯示在#content div中?

+0

對不起,但這是基本的PHP和HTTP(以及一些AJAX)......你必須自己學習。 –

+0

我認爲你患有「AJAX是可怕的魔法」症候羣。用PHP編寫一個運行一些SQL並在屏幕上輸出結果的頁面。這應該很容易找到教程。然後讓它看看ID的查詢字符串參數(一定要警惕[SQL注入](http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php )!)那麼......呃,就是這樣!使用JS你必須加載你的新網址。 – IMSoP

回答

1

有多種方法可以將數據傳遞到服務器。即,您可以使用HTTP GET方法或HTTP POST方法。現在,您正在使用jquery $ .ajax方法,默認情況下,它使用GET。在GET請求,你必須通過數據與以下格式的網址...

$.ajax({url:"./path/to/your/php/script?id=" + id ,success:function(result){ 
... 

所以呈現的網址最終會看起來像www.somesite.com/path/to/your/php/腳本?ID = 24

那麼你的服務器上,可以從網址很容易與PHP的$ _GET法搶ID,像這樣......

$id = $_GET['id']; 

,然後你就可以查詢你的數據庫中帶有該ID的記錄...

$result = mysqli_query($con,"SELECT content FROM htmlcontent WHERE id = " . $id); 

我建議你在$ _GET和$ _POST方法中研究基本的HTTP請求類型(GET,POST,PUT,DELETE)及其在php中的實現。

+1

我知道這只是一個簡單的例子,但這是一個很好的例子,讓你自己開放[SQL注入](http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-在-PHP)。假設ID是一個整數,你可以使用'「... WHERE id =」。 intval($ id));'作爲簡單但有效的保護。 – IMSoP

+0

謝謝查理我得到它的工作! –

相關問題