mysqli_stmt_error() expects parameter 1 to be mysqli_stmt, null given
mysqli_stmt_fetch() expects parameter 1 to be mysqli_stmt, null given
我一直试图解决这个问题很长一段时间。有谁能看到这个问题?我非常怀疑$ db是问题,因为我登录后需要访问$ db才能创建会话。我也有一个mysqli_connect_error();在此代码之前。
$per_prep = mysqli_prepare($db, 'select Permissions from Chatpermissions where Uid = ? and Chatid = ?');
mysqli_stmt_bind_param($per_prep, 'ii', $uid, $chatroomid);
mysqli_stmt_execute($per_prep);
mysqli_stmt_bind_result($per_prep, $permission);
mysqli_stmt_error($perprep);
mysqli_stmt_fetch($permission);
mysqli_stmt_close($room_prep);
我在工作台中测试了查询并提取了结果。
答案 0 :(得分:0)
当你将stmt分配给$ per_prep时,你应该使用相同的变量名称,而不是$ perprep。
$per_prep = mysqli_prepare(...);
. . .
mysqli_stmt_error($perprep); // wrong variable name here
此外,fetch函数接受语句的参数,而不是您尝试将结果绑定到的变量。
mysqli_stmt_fetch($permission);
应该是:
mysqli_stmt_fetch($per_prep);
答案 1 :(得分:0)
更改
mysqli_stmt_error($perprep);
mysqli_stmt_fetch($permission);
到
mysqli_stmt_error($per_prep);
mysqli_stmt_fetch($per_prep);