从select query php返回结果数组

时间:2017-08-24 22:06:24

标签: php android mysql

我正在尝试为应用实施搜索建议,并且需要搜索包含用户列表的数据库表。我需要脚本返回一个数组,其中包含符合条件的所有用户的详细信息(即,如果用户搜索'Jo',它将返回名为'John''Joe'的用户等。我已经使用了其他一些脚本的部分内容,但我无法让mysqli_fetch_array方法正常工作。

每次用户输入内容时,我都会使用onTextChangedListener来查询脚本,我相信这是正确的方法。我将在下面发布我的代码,如果需要更多信息,请告诉我。

$con = mysqli_connect(database details);

$name = $_POST["name"];

$statement = mysqli_prepare($con, "SELECT user_id, name, email FROM users WHERE name = ?");
mysqli_stmt_bind_param($statement, "s", $name);
mysqli_stmt_execute($statement);
mysqli_stmt_store_result($statement);
mysqli_stmt_bind_result($statement, $user_id, $name, $email);


$response = mysqli_fetch_array($statement, MYSQLI_ASSOC);

echo json_encode($response);

mysqli_close($con);

在android studio中我收到错误:mysqli_fetch_array() expects parameter 1 to be mysqli_result

1 个答案:

答案 0 :(得分:1)

尝试使用以下循环的mysqli_fetch数组:

while (mysqli_stmt_fetch($statement)) {
    $response[] = [
        "user_id" => $user_id,
        "name" => $name,
        "email" => $email,
    ]; //assign each data to response array
}