我在mysql数据库中设置了一个表.. firstName,lastName,email,password,allow,allow。
我加载了一个假人,我正在测试XMLHttpRequest()功能。
出于某种原因而不是像这样返回数据:
[{"firstName":"Theodore","lastName":"Roosevelt","email":"teddyR@gmail.com","password":"12345678","active":"N","allow":"Y"}]
它返回的数据如下:
[{"firstName":"Theodore","0":"Theodore","lastName":"Roosevelt","1":"Roosevelt","email":"teddyR@gmail.com","2":"teddyR@gmail.com","password":"12345678","3":"12345678","active":"N","4":"N","allow":"Y","5":"Y"}]
我无法弄清楚它为什么重复和编号值。这是我的超级简单的html / js:
<body>
<div id="results">
<button type="button">Get Data</button>
</div>
</body>
<script>
$("button").click(function(){
$.ajax({url: "selectTest.php", success: function(result){
$("#results").html(result);
}});
});
</script>
这是我的php文件(一个调用另一个函数):
首先:
<?php
include('config.php');
include('web_db_operations.php');
$email = 'teddyR@gmail.com';
echo getAllUserInfo_userTable($email);
?>
第二
function getAllUserInfo_userTable(string $email){
include 'config.php';
$sql = 'SELECT * FROM userTable WHERE email= :email';
$stmt = $conn->prepare($sql);
$stmt->bindParam(':email', $email, PDO::PARAM_STR);
$stmt->execute();
$getResults = $stmt->fetchAll();
$myJSON = json_encode($getResults);
return $myJSON;
}
到目前为止,我一直在使用会话变量,但我想开始学习如何异步做事,这对我来说都是新的。
谢谢。
答案 0 :(得分:2)
fetchAll()
默认按名称和索引返回列,请参阅here,如果您不想要,请指定一个。
要仅使用名称,
$getResults = $stmt->fetchAll(PDO::FETCH_ASSOC);