【问题标题】:Why am I getting an error related to the number of variables?为什么我会收到与变量数量相关的错误?
【发布时间】:2022-11-02 10:08:02
【问题描述】:

我正在尝试使用 mysqli 函数使用 PHP 访问 MySQL 数据库。

我的代码是

$query = $mysqli->prepare("SELECT DISTINCT NAME, SEX, AGE, SUBJECT FROM PEOPLE P, SUBJECTS S WHERE ID = M.ID_PERSON AND NAME LIKE '%?%'");
$query->bind_param("s", $Name);

然后我收到下一个错误: 致命错误:未捕获的 ArgumentCountError:变量的数量必须与 /var/www/html/BD-PHP/person.php:25 中准备好的语句中的参数数量匹配 堆栈跟踪:#0 /var/www/html/BD -PHP/person.php(25): mysqli_stmt->bind_param() #1 {main} 在第 25 行的 /var/www/html/BD-PHP/person.php 中抛出

据我说,变量必须匹配,因为我只有一个“?” prepare 函数中的符号,它是一个字符串。可能出了什么问题?

【问题讨论】:

    标签: php mysqli bindparam


    【解决方案1】:

    请更改为:

    $query = $mysqli->prepare("SELECT DISTINCT NAME, SEX, AGE, SUBJECT FROM PEOPLE P, SUBJECTS S WHERE ID = M.ID_PERSON AND NAME LIKE ? ");
    $query->bind_param("s", '%'.$Name.'%');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-12
      • 2021-04-05
      • 1970-01-01
      • 2015-10-05
      • 1970-01-01
      • 1970-01-01
      • 2020-12-05
      相关资源
      最近更新 更多