php - 绑定(bind)变量的数量与php和android中的prepared语句中的字段数不匹配

标签 php mysql sql mysqli

我尝试通过Android运行此脚本,但是响应是这样;


  绑定变量数与准备好的字段数不匹配
  声明


我不知道这意味着什么,但是我的脚本只是应该在输入信息正确的情况下使该人登录。然后,从数据库中获取一个字符串,然后将其返回给android。有人可以解释我做错了什么吗?这个错误甚至意味着什么?

我的脚本看起来像这样;

<?php
    $db_host = 'localhost:3306';
    $db_user = 'root';
    $db_pass = '';
    $db_name = 'test';

    $con = mysqli_connect($db_host,'user',$db_pass,$db_name);
    $username = $_POST["username"];
    $password = $_POST["password"];
    $statement = mysqli_prepare($con, "SELECT * FROM cresidentials WHERE username = ? AND password = ?");
    mysqli_stmt_bind_param($statement,"ss",$usermame,$password);
    mysqli_stmt_execute($statement);

    mysqli_stmt_store_result($statement);
    mysqli_stmt_bind_result($statement,$username,$password,$isAdmin);
    echo $isAdmin;
    ?>

最佳答案

OP的表格中当然也有一个id列(我在他通过聊天与我分享屏幕截图后才发现的),您还需要绑定它。

mysqli_stmt_bind_result($statement, $user_id, $username, $password, $isAdmin);

代替:

mysqli_stmt_bind_result($statement,$username,$password,$isAdmin);

关于php - 绑定(bind)变量的数量与php和android中的prepared语句中的字段数不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53396283/

相关文章:

php - 如何阻止 GD2 在调整图像大小时洗掉颜色?

php - 如何获取插入记录时的ID?

MySQL 连接超时问题 - 使用 Hibernate 和 ORM 的 Tomcat 上的 Grails 应用程序

c# - 将 Hash256 字符串结果转换为大写?

sql - 查询每个学生的平均分

php - laravel 中 yajra 数据表的问题

mysql - 我的关节乘以我的总和结果

mysql - 如何直接从 phpmyadmin 列更新 X

mysql - col 查询结果中有重复字段

php - 如何在不知道当前值的情况下向 PHP 中的 MySQL SET 类型添加可能的值