我正在使用此代码:
HTML code (jsonexamplecss.html):
<!DOCTYPE html>
<html>
<body>
<div id="id01"></div>
<script>
var xmlhttp = new XMLHttpRequest();
var url = "adomaniname/phpselectdatawhere.php";
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
myFunction(xmlhttp.responseText);
}
}
xmlhttp.open("GET", url, true);
xmlhttp.send();
function myFunction(response) {
var s = 256;
var hr = new XMLHttpRequest();
hr.open("POST", "adomainname/phpselectdatawhere.php", true);
hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
hr.send("limit="+s);
var arr = JSON.parse(response);
var i;
var i = 0;
for(i = 0; i < arr.length; i++) {
out = arr[i].name
if (out = "0 results") {
alert("0 results");
}
}
document.getElementById("id01").innerHTML = out;
alert(out);
}
</script>
</body>
</html>
PHP代码(phpselectdatawhere.php):
<?php
if(isset($_POST['limit'])){
$limit = preg_replace('#[^0-9]#', '', $_POST['limit']);
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT id, name FROM testget WHERE id='$limit'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo $row["name"];
}
} else {
echo "0 results";
}
$conn->close();
?>
我有一个名为testget
的表格,id, name
字段均为VARCHAR
。我写了一个脚本来做这些事情:
HTML脚本通过http请求将数据发送到php脚本,在此示例中,它发送limit=256
。
PHP脚本获取limit=256
,从限制中删除数字并存储$limit =256
。
之后,PHP脚本会搜索表name
中是否存在id='$limit'
并打印name
(如果存在),否则它会回显0结果。表格testget
有一行id=256
和name=JohnDoe
,因此无法回显0结果。
完成所有这些程序后,HTML脚本会获取回显的内容,并使用JavaScript提醒他们。
所以在这种情况下,我希望在我的HTML页面中提醒JohnDoe,但遗憾的是没有任何显示。请你帮助我好吗?
请注意,网址和数据库连接信息是正确的,但您可以理解我不想显示它们。