使用jquery从数据库中选择数据不会获得值

时间:2017-05-03 02:11:37

标签: javascript php jquery

大家好,我在这里遇到了问题 我创建了一个项目,并且在该项目中有一个函数,用于从数据库调用数据以在表中显示。我检查了php函数,但运行良好。我以为我对我的jquery感到恐惧,但我不知道这里的错误以及如何修复它。请帮助我,我希望任何人都可以解决我的问题,并对我的代码进行任何更正

这里是我的代码(JQUERY,PHP,HTML)

$(document).on('click','#show',function(e) {
    var data = $("#form_input4").serialize();

    $('#table_1 tbody').empty();
        $.ajax({
            data: data,
            type: "Post",
            url: "../php/bkk_1/bkk_show.php",
            success: function(data){
  var list = JSON.parse(data);
  for(var i = 0; i < list.length; i++){
                $('#mat').val((list[i]['material']));
                $('#lok').val((list[i]['lokasi']));
                $('#kpl').val((list[i]['kapal']));
                $('#po_numb').val((list[i]['po']));
                $('#date').val((list[i]['tanggal']));

                var tr = "<tr>";

                tr += "<td>" +list[i]['no']+"</td>";
                tr += "<td>" +list[i]['no_pol']+"</td>";
                tr += "<td>" +list[i]['netto']+"</td>";
                tr += "</tr>";
                $("#table_1 tbody").append(tr);
  }
  return false;
}
});
});
<?php
$con=mysqli_connect("localhost","root","","silo");

if (!$con) {
  die('Could not connect: ' . mysql_error());
}

$tgl=$_POST['tgl'];
$po=$_POST['no_po'];

// Data for Titik1
$query = mysqli_query($con,"SELECT * FROM bkk_1 WHERE tanggal='$tgl' and po='$po' LIMIT 0, 38");
$rows = array();

while($tmp= mysqli_fetch_assoc($query)) {
    $rows[] = $tmp;
}

echo json_encode($rows);
mysqli_close($con);
?> 
<div id="myModal" class="modal">

  <!-- Modal content -->
  <div class="modal-content">
    <span class="close">&times;</span>
    <div id="content1" class="btn btn-default">
    <p align="center" <strong>Display Data Pada Kondisi: </p></strong>
    <div id="content1" class="btn btn-default">
    <form action="../php/bkk_1/bkk_show.php" id="form_display" method="post">
    <table>
    <tr>
    <td width="50">Tanggal </td>
    <td width="10">:</td>
    <td width="30"><input type="text" id="tgl" type="text" name="tgl" size="15" /></td>
    <td width="10"><img src="../image/show.png"  class="show" name="display" id="display" style="height:35px; width:     40px; padding: 5px 5px;  font-size: 24px;  text-align: center;  cursor: pointer;  outline: none;  color: #fff;
  background-color: #ffff;  border: none;  border-radius: 10px;  box-shadow: 0 2px #000000;"  /></td>
    </tr>
    <tr>
    <td width="50">PO Number </td>
    <td width="10">:</td>
    <td width="30"><input type="text" id="no_po" type="text" name="no_po" size="15" /></td>
    </tr>
    </table>
    </form>
    </div>
    </div>
    </div>
</div>

1 个答案:

答案 0 :(得分:0)

您的表单没有id="form_input4",这是您序列化到数据变量并POST到PHP的内容。虽然我怀疑你想要的是var data = $("#form_display").serialize()

您可以采取以下措施进行调试:

  1. console.log($("#form_display").serialize());验证您发送到ajax的数据是否符合预期

  2. 您的PHP文件中的
  3. var_dump($_POST);,以确保您的数据以预期的方式传送到服务器

  4. 回复之前
  5. var_dump($rows);以查看是否包含您期望的数据

  6. 成功回调函数
  7. console.log(list)