沃梦达 / 编程问答 / php问题 / 正文

插入 - 绑定变量的数量与准备好的语句中的字段数量不匹配

INSERT - Number of bind variables doesn#39;t match number of fields in prepared statement(插入 - 绑定变量的数量与准备好的语句中的字段数量不匹配)

本文介绍了插入 - 绑定变量的数量与准备好的语句中的字段数量不匹配的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

I'm getting:

Warning: mysqli_stmt::bind_result(): Number of bind variables doesn't match number of fields in prepared statement in E:XAMPPhtdocsaccountlib egister.php on line 73

When I use this code:

if($stmt = $conn -> prepare("INSERT INTO login(user, pass) VALUES(?, ?)")) {

  /* Bind parameters s - string, b - blob, i - int, etc */
  $stmt -> bind_param("ss", $user, $pw);

  /* Execute it */
  $stmt -> execute();

  /* Bind results */
  $stmt -> bind_result($user, $pw);

  /* Close statement */
  $stmt -> close();
  $userId = $conn->insert_id;
} 

I can't understand, why this happens every time, what is wrong in my code snippet?

解决方案

You are attempting to bind_result on a statement that is not returning any results.

Remove this line. $stmt -> bind_result($user, $pw);

这篇关于插入 - 绑定变量的数量与准备好的语句中的字段数量不匹配的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:插入 - 绑定变量的数量与准备好的语句中的字段数量不匹配

基础教程推荐