0

我在我的网页中使用了一个评论框并保存了用户输入的评论。现在我想要的是使用 AJAX 显示它们。我设置了一个javascript计时器来一一获取评论。但我不知道如何使用 AJAX 来检索数据。这是php文件

<?php
$link = mysql_connect("localhost","root","");
mysql_select_db("continental_tourism");
$query = "SELECT comment_id from comment";
$result = mysql_query($query);
$counter = 0;
while ($row = mysql_fetch_assoc($result))
{
$counter++;
} 

$comment_number = rand(1,$counter);
$query_comment = mysql_query("SELECT * FROM comment WHERE comment_id = '$comment_number'");
if (!$query_comment) { 
die('Invalid query: ' . mysql_error());
}   
while($result_comment = mysql_fetch_array($query_comment)) {

echo $result_comment['comment'];

}
?>

以下是主文件中的脚本部分。

function timeMsg()
{
var t=setTimeout("show_comment()",3000);
}

function show_comment(){

}

我应该如何将 AJAX 代码写入?

函数 show_comment()

如果有人可以逐行解释 AJAX 代码,我会非常满意。

4

2 回答 2

2

您必须将所有 php 脚本移动到另一个 php 文件,例如 getdata.php,并在要显示数据的文件中使用 ajax 函数,例如 index.php。(这是为了易于使用的代码)。现在你的 index.php 文件应该看起来像

<html>
  <body>
    <div id="comments"></div>
  </body>
  <script src="include/jquery.js" type="text/javascript"></script>
  <script type="text/javascript>
    function show_comments() {
         $.ajax({
            url:getdata.php
            success:function(data){
               $("#comments").append(data);
            }
         }); 
  </script>
 </html>

我正在使用 jquery 的 jquery.ajax 函数。这是一些提示,您可以如何做到这一点。我希望它能帮助你完成你的任务。

于 2012-04-20T11:13:34.680 回答
1

使用 jQuery 的.get()方法,将 PHP 脚本的链接用作 URL。那应该调用您的 PHP 脚本,并且您的脚本应该回显输出。

在回显它之前,您应该考虑json_encode从 php 脚本输出您的输出。

我认为,与其这样做——

$query = "SELECT comment_id from comment";
$result = mysql_query($query);
$counter = 0;
while ($row = mysql_fetch_assoc($result))
{
$counter++;
} 

您可以查询SELECT COUNT(comment_id) from comment并获取计数。

于 2012-04-20T11:05:35.977 回答