0
我试图从我的LAMP服务器获取产品数据。但我没有得到回应。问题似乎是array_push不能正常工作,因为我可以在使用echo之前打印数据。php:无法为数组赋值并将其作为响应传递
我对PHP相当陌生。
感谢您的提前帮助。
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "DB";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT * FROM Produkt";
$result = $conn->query($sql);
// check for empty result
if (mysqli_num_rows($result) > 0) {
// looping through all results
// products node
$response["products"] = array();
while ($row = mysqli_fetch_assoc($result)) {
// temp user array
$product = array();
$product["ID"] = $row["ID"];
$product["Name"] = $row["Name"];
// push single product into final response array
//print json_encode($product);
array_push($response["products"], $product);
}
// success
$response["success"] = 1;
// echoing JSON response
echo json_encode($response);
} else {
// no products found
$response["success"] = 0;
$response["message"] = "No products found";
// echo no users JSON
echo json_encode($response);
//print json_encode($response);
}
?>
如果你只需从数据库中选择'ID'和'Name'(改变你的sql),你就可以执行'$ response ['products'] [] = $ row;'在while循环中 – Rasclatt