如何使用PHP和Javascript从MYSQL检索多个数据

How can I retrieve multiple data from MYSQL using PHP and Javascript?

本文关键字:检索 数据 MYSQL 何使用 PHP Javascript      更新时间:2023-09-26

我在下面有这个代码,当用户输入 PRD 编号并点击"输入"键时,它会从数据库中检索数据。它适用于显示单个数据,但我需要显示多个数据(PRDNO,PRDITEMCODE,PRDQTY)。

Js 代码:

$("#prNum").keypress(function(e){
    if(e.keyCode==13){
        var getPR = $("#prNum").val(); //gets the value entered on supCode textbox
        if($.trim(getPR) != ""){
            $.post("ajax/prdetails.php", {getPR: getPR}, function(data){
                if(data == "error"){
                    alert("Purchase Request number not found.");
                    $("#prNum").text("");
                }       
                else
                {
                    $("#displayPRD").text(data);
                }
            });
        }
    }    
}); //end prNum keypress

PHP代码:

if(isset($_POST['getPR']) === true && empty($_POST['getPR']) === false)
 {
    mysql_connect('localhost', 'root', '') or die("Could not connect to server.");
    mysql_select_db('cch');
    $query = mysql_query("
        SELECT `PRDNO` , `PRDITEMCODE` , `PRDQTY`
        FROM `prdetailfile`
        WHERE `PRDNO` = '" . mysql_real_escape_string(trim($_POST['getPR'])) . "' 
    ");
    if (!$query) 
    {
        die(mysql_error());
    }
    echo (mysql_num_rows($query) !== 0) ? mysql_result($query, 0, 'PRDNO') : 'error';
 }

我似乎找不到将每个列值存储在数组中的方法。顺便说一句,我需要在 HTML 中的现有表中按行显示数据,并且应该如下所示:

普德诺 | 珠三角代码 | 普德克蒂

PR001 | IC001 | 50

PR001 | IC002 | 40

PR001 | IC003 | 30

采购计划(PRDNO)可以有多个具有相应数量的项目订单(PRDITEMCODE)。如果有人能帮助我解决这个问题,我将不胜感激。谢谢!

编辑:很抱歉表格的表示不佳。我还不能发布图像,但这就是表格的样子:)

有几种方法可以解决此问题 - 您可以以 json 格式或 html 格式返回结果,而不是只获取一个值。

在 PHP 中回显以下内容

while($row = mysql_fetch_array($result))
{echo '<tr><td>'.$row['PRDNO'] . "</td><td>" . $row['PRDITEMCODE']."</td><td>".$row['PRDQTY'];
echo "</td></tr>";
}

然后,您可以使用 jquery 简单地将结果附加到表中。

$('#myTable tbody').append(data);

使用

mysql_fetch_array()

从数据库中获取详细信息的功能尝试 JSON 编码函数返回多个值

喜欢

  echo json_encode($functionArray);

通过使用这些组合,您可以获得想要做的事情

虽然您的查询获取所有必需列的记录,但您只会将 PRDNO 发送回客户端。您应该构造查询结果的 JSON 对象,并将该 JSON 字符串发送到可用于在 HTML 中呈现的客户端。

这些链接也应该有所帮助:

http://www.thomasfrank.se/mysql_to_json.html

从 MySQL 查询返回 JSON 响应

mysql_query 已弃用改用 mysqli 或 PDO