javascript - 无法从服务器上的 PHP 文件获取 JSON 数据

标签 javascript php json phpmyadmin xmlhttprequest

我在服务器上有一个数据库,其中包含一个表customers,以及其中的列names。我想向服务器发出请求,要求提供 customers 表中的前 2 条记录。一旦我运行程序,浏览器无法显示记录,它显示未定义。看下面的图片。

enter image description here

.php:

<?php

header("Content-Type: application/json; charset=UTF-8");
$obj = json_decode($_GET["x"], false);

$conn = new mysqli("127.0.0.1", "abc", "def", "mydatabase");
$result = $conn->query("SELECT names FROM " . $obj->table . " LIMIT " . $obj->limit);
$outp = array();
$outp = $result->fetch_all(MYSQLI_ASSOC);

echo json_encode($outp);
?>

.html:

    <p id="demo"></p>

<script>
var obj, dbParam, xmlhttp, myObj, x, txt = "";
obj = { "table":"customers", "limit":2 };
dbParam = JSON.stringify(obj);
xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
        myObj = JSON.parse(this.responseText);
        for (x in myObj) {
            txt += myObj[x].name + "<br>";
        }
        document.getElementById("demo").innerHTML = txt;
    }
};
xmlhttp.open("GET", "demo_file.php?x=" + dbParam, true);
xmlhttp.send();

</script>

最佳答案

您必须在js循环中使用names而不是name对象,因为在您的选择查询中您有names列并且结果有names 属性。

<p id="demo"></p>

<script>
    var obj, dbParam, xmlhttp, myObj, x, txt = "";
    obj = { "table":"customers", "limit":2 };
    dbParam = JSON.stringify(obj);
    xmlhttp = new XMLHttpRequest();
    xmlhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            myObj = JSON.parse(this.responseText);
            console.log(myObj)
            for (x in myObj) {
                txt += myObj[x].names + "<br>";
            }
            document.getElementById("demo").innerHTML = txt;
        }
    };
    xmlhttp.open("GET", "demo_file.php?x=" + dbParam, true);
    xmlhttp.send();

</script>

关于javascript - 无法从服务器上的 PHP 文件获取 JSON 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44629656/

相关文章:

javascript - Flux + React.js - Action 中的回调是好是坏?

javascript - Ajax 返回空白响应

php - WordPress - get_avatar 添加自定义类

java - 处理来自数据库的响应并将其传递给新 Activity

javascript - 如何在 nodejs 中同步调用请求?

javascript - 通过id检索帖子

java - 如何在Ehcache中使用SimpleCachingPageFilter更新或失效缓存?

mysql - MYSql社区版是否支持Nosql

javascript - ES6 中的全局导入

php - 这是做什么的?