我想創建一個簡單的PHP腳本,使用預處理語句選擇數據。目前,我正在使用this教程作爲源代碼。當我呼叫我的腳本時,我在error.log中沒有錯誤,但沒有顯示數據。這裏是我的腳本:簡單的PHP選擇與準備好的語句顯示沒有結果
<?php
$servername = "xxx";
$username = "xxx";
$password = "xxx";
$dbname = "xxx";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$stmt = $conn->prepare("SELECT * FROM Regions WHERE id=?");
$stmt->bind_param("i", $_POST['id']);
$stmt->execute();
$result = $stmt->get_result();
if($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$name[] = $row['name'];
$center[] = $row['center'];
$content_string[] = $row['content_string'];
}
}
$stmt->close();
echo $name;
echo $center;
echo $content_string;
$conn->close();
?>
我的結構是這樣的:
我試圖通過調用 http://URL/php/protected.php?id=1和http://URL/php/protected.php無濟於事訪問輸出。我已經縮小了錯誤發生的原因,因爲if($result->num_rows > 0)
從未得到評估。從那裏,我認爲這個錯誤必須在我的SQL語句中。
'$ stmt-> execute'是真是假?您是否檢查過執行中的錯誤? – chris85
@ chris85我不確定。我該如何檢查? – taurus
如果這是你打算做的事'int'不能保存48位小數位。 – chris85