2012-06-17 67 views
1

我需要製作一個像fmylife.com中的系統。基本上我遇到的問題是使用Ajax(不刷新頁面)將MySQL查詢加載到div中。 MySQL查詢使用Ajax重新加載DIV中的MySQL數據

$sql = mysql_query(「SELECT * FROM posts WHERE active =’0’」 LIMIT 1) or die (mysql_error()); 
$row = mysql_fetch_array($sql); 

HTML

<div class=」post-body」><?php echo $row[‘sitepost’];?></div> 

這個數據應該按 「是」 或 「否」 按鈕時重新加載。提前致謝。

+0

你的ajax代碼在哪裏? – Sarfraz

+0

你試過Google搜索嗎? – hjpotter92

+0

@ Sarfraz - 這就是我想知道的。 Ajax代碼。 @ T恤老兄是的,我試着從這麼多天開始。我終於來到了這裏。 –

回答

5

@mgraph是接近,但如果你想d O此按鈕上單擊

post.php中

//$UserOption will be Yes/No for button clicks or empty string for first load of the page 

$UserOption = $_REQUEST['UserClicked']; 

//Id will be set if a vote has been clicked or empty string if it's the first load 
$Id = $_REQUEST['Id']; 

//(Do something with $UserOption) 

$sql = mysql_query("SELECT * FROM posts WHERE active ='0' LIMIT 1") or die (mysql_error()); 
$row = mysql_fetch_array($sql); 
echo $row['sitepost']; 

JS

<script type="text/javascript"> 
$(document).ready(function(){ 
    update(null,null); 
}) 

function update(Id, Vote) { 
    $(".post-body").eq(0).load("post.php?UserClicked=" + Vote + "&Id=" + Id); 
} 
</script> 

HTML

<div class="post-body"></div> 


<button type="button" onclick="update(1, 'Yes');">Yes</button> 
<button type="button" onclick="update(1, 'No');">No</button> 



<button type="button" onclick="update(2, 'Yes');">Yes</button> 
<button type="button" onclick="update(2, 'No');">No</button> 

備用HTML/JS

<script type="text/javascript"> 
$(document).ready(function(){ 
    $("#yes").click(function(){ 
     update('Yes'); 
    }) 
    $("#no").click(function(){ 
     update('No'); 
    }) 
    update(); 
}) 

function update(Vote) { 
    $(".post-body").eq(0).load("post.php?UserClicked=" + Vote); 
} 
</script> 

<div class="post-body"></div> 
<button id="yes" type="button">Yes</button> 
<button id="no" type="button">No</button> 
+0

這是偉大的,但點擊事件在哪裏? –

+0

實際上,我只是將它硬編碼到html中的按鈕上...您可以隨時爲按鈕/ div添加一個Id並使用jQuery附加一個點擊。看到我的修訂,以附加點擊 – Basic

+0

@基本這是非常好的替代方法。謝謝。還有一件事我喜歡問,可以在投票中單獨提供一個ID。其他明智的MySQL查詢將出相同的結果是不是? –

6

post.php中

$sql = mysql_query("SELECT * FROM posts WHERE active ='0' LIMIT 1") or die (mysql_error()); 
$row = mysql_fetch_array($sql); 
echo $row['sitepost']; 

JS

<script type="text/javascript"> 
$(document).ready(function(){ 
    $("#yes").click(function(){ 
     $(".post-body").eq(0).load("post.php"); 
    }) 
}) 
</script> 

HTML

<div id="yes">YES</div> 
<div class="post-body"></div> 
+0

謝謝我怎樣才能讓它工作時點擊按鈕(點擊事件)?說按鈕ID是「是」 –

+0

@ mgraph非常感謝您的幫助。 –

+0

@nickcruse我很高興我可以幫你 – mgraph

4

您可以添加$("html, body").animate({ scrollTop: 0 }, 500);。因此,當您點擊YES按鈕時,滾動至頂部。看起來很好。