显示从数据库到多个输入框的多个数据

时间:2018-10-01 01:48:37

标签: javascript php html

所以我有一个问题,我想根据多个值在多个输入框中显示多个值。我已经有一个代码,但是问题是它只在一个输入框中显示该值。我将向您显示代码。

这是数据库:

attId   attSubject        attDate     docId
------  ----------------- ----------  ------
     1  FAAS FRONT & BACK 2018-01-25      36
     2  NOA & TAX BILL    2018-09-12      36

HTML代码:

<input type="text" id="attchecklist" name="attchecklist">

JavaScript代码:

$("#num").val(mydata.docId);
var docIdChecklist = $("#num").val();
$("#attchecklist").load('php/getAttachmentForChecklist.php',
     {docIdChecklist:docIdChecklist},
      function(data) {
          $("#attchecklist").val(data);
      }
 );

PHP代码:

<?php 
require_once('../kclass/kconnect.php');
require_once('../common.php');
session_name(xevPRJ);
session_start();
$response= new kconnect();
$response->DB = $_SESSION['sys'];
$docIdChecklist = $_POST['docIdChecklist'];

$response->setCon();


$sqlx = "SELECT attSubject from `attachment` WHERE ((docId = '$docIdChecklist') AND (is_deleted = 0))";
$resultx=$response->kMysqli->query($sqlx);
while($row=mysqli_fetch_array($resultx, MYSQL_ASSOC)){
        $attSubject = $row['attSubject'];

        echo $attSubject;

    }

$response->unsetCon();
?>

这是结果:

Result Image

我希望结果在输入框中分开。如何实现呢?

1 个答案:

答案 0 :(得分:0)

假设您的div是这样的

<div id="myDiv></div>

然后您可以使用JS附加表单

...
$("#attchecklist").load('php/getAttachmentForChecklist.php',
    {docIdChecklist:docIdChecklist},
    function(data) {
        data = JSON.parse(data);
        $.each(data, function(index, value) {
            $("#myDiv").append(`<input type="text" id="attchecklist${index}" name="attchecklist${index}" value="${value}">`)
        });
    }
);

但是,您应该返回JSON数据数组,而不仅仅是在PHP API上回显数据。像这样:

$result = [];
while($row=mysqli_fetch_array($resultx, MYSQL_ASSOC)){
    array_push($result, $row['attSubject']);
}

$response->unsetCon();
echo json_encode($result);