Php json#u encode返回一个充满null';s
首先,我的代码:Php json#u encode返回一个充满null';s,php,arrays,json,Php,Arrays,Json,首先,我的代码: <?php include($_SERVER['DOCUMENT_ROOT'].'/website/dbConnection.php'); function filterTable($searchquery) { $filter_Result = mysqli_query($GLOBALS['connect'], $searchquery); retu
<?php
include($_SERVER['DOCUMENT_ROOT'].'/website/dbConnection.php');
function filterTable($searchquery)
{
$filter_Result = mysqli_query($GLOBALS['connect'], $searchquery);
return $filter_Result;
}
$searchquery = "SELECT Titel, Vorname, Name, Unternehmen, Gruppe FROM mitglieder";
$searchresult = filterTable($searchquery) or die("Tabelle kann nicht angezeigt werden");
echo json_encode($searchresult);
?>
我还把它放在connect变量之前,放在它自己的函数中,因为我不确定如何使用它,但没有任何帮助。当我把它作为一个参数,它实际上给出了一个解析错误
当我在发送阵列之前回显阵列时,它是完全正常的。在我使用json\u encode()
之后,所有内容都被擦除,我有一个满是null的数组。你可以在下图中看到这一点。我回显了数组,然后回显了json\u encode
,将数组作为参数。黄色标记的行是json_encode
one,您可以看到突然之间所有内容都为空
有人知道我做错了什么吗
编辑:忘了在我的查询中提到那些是德语单词。忽略这些,因为问题不在于SQL查询
编辑2:提议的帖子没有回答我的问题,因为它不是一个类似的问题。另一个用户的问题是使用多维数组,它们返回不同的结果。虽然它与我的问题很接近,但它不是同一个问题,也不是同一个解决方案 As@Jeff comment:
mysqli\u query
返回一个结果对象
看
试运行:
$data = mysqli_fetch_all($searchresult);
echo json_encode($data );
返回一个。你需要先把这些数据记录下来但是看到您有一个数组(编辑后):这是您的完整代码吗?您是否尝试运行`json_last_error()`来检查错误?可能重复“当我在发出完全正常的数组之前回显该数组时”-您回显的是什么数组?确实如此!谢谢还要感谢@Jeff!你还漏掉了一个分号;)因为你没有抓取,你在哪里得到了你在问题中发布的数组???@AbraCadaver这是我在网站不同部分使用的数组。基本上,我在前端的一个表中使用它,该表显示了我数据库中的值。在这个问题中,我在后端使用它,并使用Ajax,因为我希望我的后端保持在同一个站点上,无论您编辑的是什么表,而不是在前端查看不同的表时更改站点。
$data = mysqli_fetch_all($searchresult);
echo json_encode($data );