内联可编辑行,使用ajax php更新数据库mysql中的每个记录

时间:2016-09-19 16:49:46

标签: php jquery mysql ajax

这个问题与Error in ajax insert database有关。许多建议,但没有一个有帮助。 您可以看到演示:http://phppot.com/php/php-mysql-inline-editing-using-jquery-ajax/ 我在使用ajax,PHP和mysql编辑数据库中的记录时遇到了麻烦。 表dsdonhang有许多记录,每条记录都执行一个订单。我希望最后一列显示一个名为mavandon的字符串(跟踪发货),并且可以使用onBlur触发器进行内联编辑。 ajax函数使用2个参数发送数据:

  1. $ idd:要编辑的行

  2. text:要更新的值

  3. 的index.php:

    <?php
    $query = mysqli_query($conn,"SELECT * FROM dsdonhang");            
    while($row=mysqli_fetch_assoc($query)) {
        $data[] = $row;
    }
    foreach($data as $k=>$v) {
    ?>
    <tr>
    <td><?php $madon = $data[$k]["idd"];echo $k+1; ?></td>    
    <td><?php echo $data[$k]["donhang"]; ?></td>        
    <td contenteditable="true" onBlur="SOMETHING..."><?php echo $data[$k]["mavandon"]; ?></td>
    </tr>
    <?php            
    }
    ?>
    

    dsdonhang的结构:

    idd int(11)PRIMARY NOT NULL

    donhang varchar(50)NOT NULL

    mavandon varchar(12)NOT NULL

    如果您有任何想法或建议,请指导我。这对我很有帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

似乎没有理由加载数组然后处理数组,当它可以在while循环中完成时。

<?php
$query = mysqli_query($conn,"SELECT * FROM dsdonhang");            

while($row=mysqli_fetch_assoc($query)) {

    echo '<tr>';
    echo '<td>' . $row['idd'] . '</td>';
    echo '<td>' . $row['donhang'] . '</td>';
    echo '<td contenteditable="true" onBlur="SOMETHING...">' . $row['mavandon'] . '</td>';
    echo '</tr>';

}
?>