使用ajax和jquery进行故障排除

时间:2014-07-16 19:14:53

标签: javascript php jquery ajax debugging

我有一个从数据库加载的表,我希望能够单击并编辑该行并让它更新数据库。

目前它不起作用,我不明白为什么。有什么方法可以解决这个问题?如何判断ajax是否正在运行?我是jquery和ajax的新手,所以我不熟悉任何可能有用的调试技术。

以下是我目前的相关代码:

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

$(document).ready(function()
{

    $(".edit_tr").click(function()
    {
        var ID=$(this).attr('id');
        $("#fact_"+ID).hide();
        $("#source_"+ID).hide();
        $("#upvotes_"+ID).hide();
        $("#downvotes_"+ID).hide();
        $("#fact_input_"+ID).show();
        $("#source_input_"+ID).show();
        $("#upvotes_input_"+ID).show();
        $("#downvotes_input_"+ID).show();
    }).change(function()
    {
        var ID=$(this).attr('id');
        var fact=$("#fact_input_"+ID).val();
        var source=$("#source_input_"+ID).val();
        var upvotes=$("#upvotes_input_"+ID).val();
        var downvotes=$("#downvotes_input_"+ID).val();

        var dataString = 'id='+ ID +'&fact='+fact+'&source='+source+'&upvotes='+upvotes+'&downvotes='+downvotes;
        //var dataString = "'{'id':'"+ ID +"','fact':'"+fact+"','source':'"+source+"','upvotes':'"+upvotes+"','downvotes':'"+downvotes+"'}";

if(fact.length>0 && upvotes.length>0 && downvotes.length>0)
{

$.ajax({
    type: "POST",
    url: "table_edit_ajax.php",
    data: dataString,
    cache: false,
    success: function(html)
    {
        alert("Success");
        $("#fact_"+ID).html(fact);
        $("#source_"+ID).html(source);
        $("#upvotes_"+ID).html(upvotes);
        $("#downvotes_"+ID).html(downvotes);
    }
});
}
else
{alert('Enter something.');}
});

// Edit input box click action
$(".editbox123").mouseup(function() 
{return false});

// Outside click action
$(document).mouseup(function(){
    $(".editbox123").hide();
    $(".text").show();
});

});
</script>

table_edit_ajax.php是:

<?php
$con=mysqli_connect("XXXXXX","XXXXXX","XXXXXX","XXXXXX");
if (mysqli_connect_errno())
{echo "Failed to connect to MySQL: " . mysqli_connect_error();}

if($_POST['id'])
{
    $id=mysqli_real_escape_string($_POST['id']);
    $fact=mysqli_real_escape_string($_POST['fact']);
    $source=mysqli_real_escape_string($_POST['source']);
    $upvotes=mysqli_real_escape_string($_POST['upvotes']);
    $downvotes=mysqli_real_escape_string($_POST['downvotes']);
    $sql="UPDATE `FACTS` SET `fact_fact`='" .$fact . "', `fact_source`='" . $source . "', `fact_upvote_ctr`='" . $upvotes . "', `fact_downvote_ctr`='" . $downvotes . "' WHERE `fact_id`='" . $id . "';";
    mysqli_query($con, $sql);
}
?>

0 个答案:

没有答案