AJAX请求(删除评论)

时间:2011-05-20 00:17:10

标签: php javascript ajax

我正在尝试用javascript删除mysql记录,但是我失败了。

所以这是我的js函数

function delpost(id){
    if(confirm('Are you sure?')){
        $('#comment_'+id).hide();
        http.open("get","/index.php?p=delcomment&id=" + id, true);
        http.send();
    }
}

这是我的delcomment.php(通过index.php包含)

$comment_id = $_GET['id'];

if(logged() && $status=="administrator"){
    $delquery = mysql_query("DELETE FROM comments WHERE id='$comment_id' LIMIT 1");
    die();
}else{
    die();
}

我希望你能帮助我:)

1 个答案:

答案 0 :(得分:2)

更新: 尝试使用

http.send(null)

而不是

http.send()

另外,使用firebug查看您的ajax请求是否实际发送到服务器

更好的解决方案: (php生锈!)

delcomment.php

$comment_id = $_POST['id'];
$comment_id = mysql_real_escape_string($comment_id);

if(logged() && $status=="administrator"){
    $query = "DELETE FROM comments WHERE id='{$comment_id}'";
    $result = mysql_query($query, $con);
     die();
}else{
    die();
}

使用jquery发布(确保包含jquery.js),你的javascript函数应该是这样的:

function delpost(id){
    if(confirm('Are you sure?')){

        $.ajax({
            type: "POST",
            url: "/index.php",
            data: {p: "delcomment", id: id},
            success: function(){
                $('#comment_'+id).hide();
            },
            error: function(){
                alert('failure');
            }
        });     
    }
}