繁体   English   中英

X 可编辑 Bootstrap PHP 数据库更新

[英]X-editable Bootstrap PHP database update

我正在尝试使用 X-editable (Bootstrap) 更新 MySQL 表。 问题是 - 数据库没有得到更新。 我在 stackoverflow 和其他地方遇到了几个类似的问题。 但是找不到解决办法。

我的 mysql 数据库有一个名为“paving_variety”的表,其中包含以下三列:

  1. ID
  2. 类型
  3. 发布

我的前端页面有一个如下表:

    <?php
    $i = 1;
    foreach ($obj->showAllFromTable('paving_variety') as $variety) {
        extract($variety);
    ?>
        <tr>
            <td><?php echo $i++; ?></td>
            <td class="id"><?php echo $id; ?></td>
            <td><a href="#" class="xedit_variety" data-name="type" data-type="text" data-pk="<?php echo $id; ?>" data-url="post_variety_ajax.php"><?php echo $type; ?></a></td>
            <td ><button class="status_change btn btn-default"><?php echo $publish; ?></button></td>
        </tr>
    <?php
    }
    ?>

javascript文件具有以下代码:

    $(document).ready(function() {
        $('.xedit_variety').editable();
    });

“post_variety_ajax.php”看起来像这样:

<?php
$pk = $_POST['pk'];
$name = $_POST['name'];
$value = $_POST['value'];

include 'adminclass.php';

if(!empty($value)) {
    $gar->updateVarietyName($name,$value,$pk);
} else {
    echo "This field is required!";
}
?>

“adminclass.php”有以下更新数据库的代码:

public function updateVarietyName($name,$value,$pk) {
    $query = mysqli_query($this->conn,"UPDATE paving_variety SET $name='$value' WHERE id='$pk'");
}

其他一切似乎没问题,但数据库没有得到更新。 有人有什么建议吗?

谢谢。 平静。

好的,我终于解决了这个问题。 如下:

$('.xedit_variety').editable({
    ajaxOptions : {
        type : 'post'
    }
});

希望它可以帮助其他人面临同样的问题。

或者你可以使用,

$(document).ready(function() {
   $('.xedit_variety').editable({
      name: 'type',
      type: 'text',
      url: 'post_variety_ajax.php'
   });
});

你应该删除的地方

data-name="type"
data-type="text"    
data-url="post_variety_ajax.php"

在您的可编辑链接中。

或者你可以在post_variety_ajax.php文件中使用$_REQUEST[] ,它会同时处理 get 和 post 请求。

我在这里找到了 x 可编辑的教程:- jQuery X 可编辑插件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM