我正在尝试将用户访问令牌添加到我的数据库中。我正在使用php mysqlidb连接库。
如果我在下面使用此功能,我会收到此错误:
<b>Warning</b>: mysqli_stmt::bind_param(): Number of elements in type definition string doesn't match number of bind variables in MysqliDb.php</b> on line <b>1092</b>
function connectUser($id, $fbid, $accessToken) {
global $db;
$data = Array (
'fbid' => $fbid,
"access_token" => $accessToken
);
$db->where ('id', $id);
$db->update ('users', $data);
}
我知道accessToken中有一些内容,因为如果我在上一个函数中为accessToken添加一个echo,我得到这个:
CadC5cqRAZArcBAKDZBZBA2AO5Beu1ZBWLFWl5FZClIuFvcx8jvdBZBTv3t3gplq32dm0gw99u62dQAAoBZC71bvgDYjy5RxnpjYzzUWoOlGmlZAwL4gtregzOF9mOqBtp24mybRVMR14mCmuA7YZAJ8kvxfonv151ZAadhlZCi1TKj8I5guOO2YZC2Vfs
然后尝试手动添加它,它没有错误:
function connectUser($id, $fbid, $accessToken) {
global $db;
$data = Array (
'fbid' => $fbid,
"access_token" => 'CadC5cqRAZArcBAKDZBZBA2AO5Beu1ZBWLFWl5FZClIuFvcx8jvdBZBTv3t3gplq32dm0gw99u62dQAAoBZC71bvgDYjy5RxnpjYzzUWoOlGmlZAwL4gtregzOF9mOqBtp24mybRVMR14mCmuA7YZAJ8kvxfonv151ZAadhlZCi1TKj8I5guOO2YZC2Vfs'
);
$db->where ('id', $id);
$db->update ('users', $data);
}
这里发生了什么?
答案 0 :(得分:0)
此警告表示您的输入参数$ id,$ fbid或$ accessToken之一为空。将它们记录在某处你会看到。