AJAX 请求(删除注释)


AJAX request(delete a comment)

我正在尝试使用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();
    }
}

这是我的私言.php(通过索引.php包含)

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

我希望你能帮助我解决这个问题:)

更新:尝试使用

http.send(null)

而不是

http.send()

另外,使用 Firebug 查看您的 AJAX 请求是否真的被发送到服务器

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

德尔评论.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');
            }
        });     
    }
}