gpt4 book ai didi

php - Android/PHP/MySQL json_encode 查询结果

转载 作者:行者123 更新时间:2023-11-29 01:41:08 27 4
gpt4 key购买 nike

我在从本地服务器向 Android 应用程序获取数据时遇到了一些问题。架构:Android - PHP/Query - MySQL 数据库。

这是调用执行查询的函数(在 db_function.php 中)的函数(在 loadData.php 中):

     $exists = $db -> loadData($id);

在 db_function.php 中,函数如下所示:

public function loadData($app_cust_id) {

$results = mysql_query("SELECT * FROM ...") or die (mysql_error());

$messages = array();

if (mysql_num_rows($results)) {

while ($result = mysql_fetch_assoc($results)) {

$messages[] = $result;

}
}
return $messages;

...现在回来...我必须写什么才能返回数组结果并回显正确的 json_encode?我是否必须创建一个新数组,遍历结果并将其存储在新数组中?

    $result = $db -> loadData($id);

// ???
$response["success"] = 0;
echo json_encode($response);

编辑:

    $result = $db -> loadData($id);
$result["success"] = 0;
echo json_encode($result);

所以我做了这些改变。似乎没有数据发送回我的 java 函数。logcat 说:“解析数据 org.json.JSONException 时出错:在字符 0 处输入结束” 我没有找到解决方案。谁能告诉我如何在 Java 中使用正确的 json_encode 和正确的 jsonparser 进行处理。非常感谢!

  JSONObject json = jsonParser.getJSONFromUrl(URL, params);;

最佳答案

$result = $db -> loadData($id);

loadData 方法返回的内容存储在名为 $result 而不是 $response 的变量中。因此应该是:

    // not $response["success"] =0; 
$result["success"] = 0;
echo json_encode($result);

关于php - Android/PHP/MySQL json_encode 查询结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21732182/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com