edit.php表格,使用ajax和php

问题描述 投票:1回答:1

Intro我正在做一个服务器端数据表库。

下面的这段代码没有打印$ stmt或$ row,所以我看不到出什么问题了。太烂了,因为我想解决这个问题而不发布。...

<?php
    if (isset($_POST["edit_id"])) {
        $stmt = $conn->prepare("SELECT * FROM `employees` WHERE `id` = ?");
        print_r($stmt);
        $stmt->bind_param("i",$id);
        $id = $_POST['edit_id'];
        $stmt->execute();
        $result = mysqli_query($stmt);
        $row=mysqli_fetch_assoc($result);
        //$result = $stmt->get_result();
        //$row = mysqli_fetch_array($stmt);
        print_r($row);
    }
?>

我的ajax调用:此ajax调用本身可以独立工作...

$(document).on('click','.edit_btn',function (){
  var id = $(this).attr("id").match(/\d+/)[0];
  var edit_id = $('#example').DataTable().row( id ).data();
  var edit_id = edit_id[0];
  $.ajax({
    type:'POST',
    url: 'index.php',
    datatype: "json",
    data: { edit_id : edit_id },
    success: function(result) {
      //alert(edit_id);
      $("#edit_id").val(edit_id);
    } //success func
  }); //ajax
}); //end ready

我的编辑按钮(您可以清楚地看到,我将其命名为edit_btn)

columnDefs: [
      {  targets: -1,
         render: function (data, type, row, meta) {
            return '<button type="submit"  class="edit_btn btn btn-success btn-md active" data-id=s-"' + meta.row + '"  id=s-"' + meta.row + '" value="edit" name="edit_btn" data-toggle="modal" data-target="#editForm">  <span class="glyphicon glyphicon-pencil"></span>  </a>';
         }
      }
    ]

最终,我将以这种形式将值回显到我的编辑表单中:

 <input type="text" value="<?php echo $row['first_name']  ?>"  class="" id="edit2" name="first_name" required>
php jquery ajax
1个回答
3
投票

PHP代码的第一部分正在检查是否在数据中设置了edit_btn

if (isset($_POST["edit_btn"])) {

您传递的数据设置在...

data: { edit_id : edit_id },

由于您没有设置此选项,它总是会失败,您可以轻松地更改此设置以检查ID是否已设置...

if (isset($_POST["edit_id"])) {

编辑:也要感谢菲尔...

ajax调用必须是

$.ajax({
  url: 'index.php',
  dataType: "json",
  method: 'POST',
  data: { edit_id : edit_id },
  success: function(result) {
          //alert(result);
              $("#edit_id").val(result);
    } //success func
}); //ajax

[还注意到您的success方法正在传递result,并且您在该方法内部的代码中使用了eidt_id

© www.soinside.com 2019 - 2024. All rights reserved.