Ajax不发布内联表编辑

时间:2015-05-13 07:41:12

标签: php jquery ajax

我有一张表,我正在尝试添加内联编辑,但我对ajax很新。 JQuery代码本身有效,我可以看到td正在改变输入字段,但是我在发布数据时遇到了麻烦。

当我点击我正在尝试编辑的表格时,它会假设发布数据。但是当我这样做并刷新页面时,生成的表不会更新,也不能在数据库中看到更改。它不显示错误,只刷新页面。

项目列表数据库表

projectid | Klant

4         | mike

12        | peterson

PHP

while($row = mysql_fetch_array($resultaat, MYSQL_ASSOC)){
    $id = $row['projectid'];

    <tr id="<?php echo $id ?>" class="tredit">
        <form action="" method="post">
            <td>
                <span id="klant_<?php echo $id ?>" class="text"><?php echo $row["Klant"] ?></span>
                <input type="text" class="ip" id="klant_ip_<?php echo $id ?>" value="<?php echo $row["Klant"] ?>">
            </td>
        </form>
    </tr>
}

的Ajax

$(document).ready(function(){
    $(".tredit").click(function(){
        var ID=$(this).attr('id');

        $("#klant_"+ID).hide();
        $("#klant_ip_"+ID).show();
    }).change(function(){
        var ID=$(this).attr('id');
        var first=$("#klant_ip_"+ID).val();
        var dataString = 'id='+ ID +'&Klant='+first;
        //alert(dataString);

        if(first.length > 0){
            $.ajax({
                type: "POST",
                url: "post_table.php",
                //data: dataString,
                data: dataString,
                cache: false,
                success: function(html){
                    $("#klant_"+ID).html(first);
                },
                error: function (request, error) {
                    console.log(arguments);
                    alert(" Can't do because: " + error);
                }
            });
        }else{
            alert('Input something');
        }
    });

    $(".ip").mouseup(function() {
        return false
    });

    $(document).mouseup(function(){
        $(".ip").hide();
        $(".text").show();
    });
});

post_table.php

<?php
    include('config.php');
    $klant = $_POST['Klant'];
    $id = $_POST['id'];
    $query = "update projectlist set Klant='$klant' where id='$id'";
    mysql_query($query, $con);
?>

解决方案

我得到了它的工作。彻底检查post_table.php

从未发生过

where id='$id'错误,必须是where projectid='$id'

1 个答案:

答案 0 :(得分:0)

<?php
    include('config.php');
    $klant = $_POST['Klant'];
    $id = $_POST['id'];
    $query = "update projectlist set Klant='$klant' where id='$id'";
    mysql_query($query, $con);
    echo "success";
?>

php必须在页面上返回一些内容

{{1}}