0

我需要使用 AJAX 将用户输入的评论立即保存到数据库中。这是评论框。

<div class="comment">
        <form action="comment.php">
        <textarea cols="35" name="comments"> Give us comment </textarea>
        <input type="button" value="comment" onclick="ajaxFunction()">
        </form>                 
 </div>

这是php代码

<?php

$link = mysql_connect("localhost","root","");
mysql_select_db("continental_tourism");

$comments = $_POST['comments'];

if($comments == "")
echo "Please type your comment";
else
{
$query = "insert into comment(comment) values('$comments') ";
mysql_query($query);
} 
return;
?>

我需要知道这应该如何改变。谢谢你

4

1 回答 1

4

我会像这样改变你的 HTML

<textarea cols="35" id="comments"> Give us comment </textarea>
<input type="button" value="comment" id="btnSave" />

还有剧本

$(function(){
 $("#btnSave").click(function(e){
  e.preventDefault();
  $.post("yourphpfile.php", { comments : $("#comments").val() } ,function(data){
     alert(data);
  });  
 }); 
});

上面的脚本将向 yourphpfile.php 发送一个 ajax 请求,其值存在于文本区域中,带有 id 注释。然后一旦它从服务器页面获取一些数据。它只是提醒它(如果需要,您可以在单独的 div 中显示它)。将数据保存到数据库后,您应该回显 php 文件中的响应。

如前所述,在保存从查询字符串值读取的数据时,您应该小心 SQL 注入。在将其放入查询之前进行适当的清理。对不起,我不是一个 php 人。所以不知道该怎么做。

不要忘记将 jQuery 库包含到您的页面中。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" type="text/javascript"></script>

如果遇到任何脚本错误,您可以使用 firebug 控制台调试脚本错误。

于 2012-04-20T02:01:40.563 回答