我正在嘗試查詢我的 MySQL 資料庫。我的 html 檔案中的 Javascript 代碼是...
<script>
function getGameNumberOfPlays() {
var sentValue1 = Number;
var xhttp;
xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("gameNumberOfPlays").innerHTML = this.responseText;
}
};
xhttp.open("GET", "numberOfPlays.php", true);
xhttp.send(sentValue1);
}
</script>
'numberOfPlays.php' 代碼是......
<?php
$dbhost = 'localhost';
$dbuser = 'xxx';
$dbpwd = 'xxx';
$dbname = 'xxx';
$conn = new mysqli( $dbhost, $dbuser, $dbpwd, $dbname );
$p1 = $_GET['sentValue1'];
$sql= "SELECT COUNT(ID) FROM `data` WHERE `gameNumber` = ?";
$stmt = $conn->prepare($sql);
$stmt->bind_param('i', $p1);
$stmt->execute();
$result = $stmt->get_result();
$user = $result->fetch_array();
echo "$user[0]";
$conn->close();
?>
上面的代碼在我的 html 頁面中生成 0。
但是,如果我將“numberOfPlays.php”的代碼更改為...
<?php
$dbhost = 'localhost';
$dbuser = 'xxx';
$dbpwd = 'xxx';
$dbname = 'xxx';
$conn = new mysqli( $dbhost, $dbuser, $dbpwd, $dbname );
$p1 = $_GET['sentValue1'];
$p2 = 171; // or any number that's in the database
$sql= "SELECT COUNT(ID) FROM `data` WHERE `gameNumber` = ?";
$stmt = $conn->prepare($sql);
$stmt->bind_param('i', $p2);
$stmt->execute();
$result = $stmt->get_result();
$user = $result->fetch_array();
echo "$user[0]";
$conn->close();
?>
我在我的 html 頁面中得到了正確的數字,所以除了變數“sentValue1”的發送和接收方式之外,編碼似乎是可以的。
如果有人能讓我知道如何更改代碼以便 MySQL 查詢與變數“sentValue1”一起作業,我將不勝感激。
資料庫中的“gameNumber”列是這樣配置的...
“gameNumber”列的螢屏截圖
非常感謝。
uj5u.com熱心網友回復:
您沒有sentValue1在您的 xhttp 請求中發送
改變:
xhttp.open("GET", "numberOfPlays.php", true);
xhttp.send(sentValue1);
至:
let URL = "numberOfPlays.php?sentValue1=<number>";
xhttp.open("GET", URL, true);
xhttp.send();
或者:
xhttp.open("GET", "numberOfPlays.php", true);
xhttp.send(sentValue1=<number>);
你可以檢查這個鏈接
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/493757.html
