如何从PHP中具有相同ID的数据库中获取多个结果(行)?

时间:2019-05-18 22:47:51

标签: php sql-server ajax database crud

我正在使用PHP对SQL Server数据库进行CRUD操作。我不使用任何PHP框架,仅用于自定义。也许我需要一些框架?

使用SQL Server Management Studio,我在数据库中创建了一个视图,然后使用该视图在PHP中选择所需的数据。

问题是对于一行我有多个项目,所以所有这些项目都具有相同的行ID,并且我可以在Web应用程序中获得仅第一行的结果,但是我需要在ID上打印该ID的所有项目Web应用程序。我该如何实现?如果该行只有一项,那很好,但是如果有一项以上,我也需要打印数据,这就是问题所在。

PHP框架会有帮助吗?或者,如果那有意义的话,我应该考虑使用Python Django吗?

我无法访问我今天正在使用的数据库,但我将举一些示例以更好地理解。

数据库示例中的行

ID PC物品
1个HP Core i5
1个HP 4GB RAM
1个HP Nvidia 1060
2戴尔Core i7
2个Dell 8GB RAM
3 Acer Core i7
3个Acer 4GB RAM
3宏cer Nvidia 1070
3个Acer SSD 240 GB

因此,对于每台PC,我都需要使用PHP打印所有组件(项目)。希望您现在能理解。

script.js和orderDetails.php文件

function showDetails(button) {  // Show all details (items) of one row

var orderNumber = button.id;
// alert(orderNumber);
// AJAX call to get specific customer data
$.ajax({
    url: "orderDetails.php",
    method: "GET",
    data: {
        "orderNumberGET": orderNumber
    },
    success: function(response) {
        alert(response);
        // Parsing JSON string
        var rowData = JSON.parse(response);

        $("#acKey").text(rowData.RN_key);

        $("#item1").text(rowData.anNo);
        $("#item2").text(rowData.acIdent);
        $("#item3").text(rowData.anQty);

        $("#item4").text(rowData.anNo);
        $("#item5").text(rowData.acIdent);
        $("#item6").text(rowData.anQty);

       }
    }
});
}




// orderDetails.php file
<?php

require 'dbConnection.php';

if ($conn) {
$orderNumber = $_GET["orderNumberGET"];

$sql222 = "SELECT * FROM _Servisni_nalog_ToDo WHERE RN_key=$orderNumber";
$stmt = sqlsrv_query($conn, $sql222);
$json = '';

// $row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC);

while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) { // trying to print all with while loop, didn't succee. I can only get multiple json as response for every row (with same IDs) but don't know how to access any but first
    // echo $row['anNo'];
    $json .= json_encode($row);
    // echo $row;
}

echo $json;

// $array = json_decode($json, true);
// echo json_encode($row);
} 
else echo "No connection to database. Please check internet connection.";

0 个答案:

没有答案