我有一小段代码。
echo $token;
$selstmt=$conn->Prepare("SELECT UserID FROM USER WHERE Token LIKE ?");
$selstmt->bind_param('s', $token);
echo $token;
$selstmt->execute();
$selstmt->store_result();
$selstmt->bind_result($userid);
$selstmt->fetch();
echo $userid;
$selstmt->close();
如果我删除bind_param并直接在prepare语句中插入值,则查询工作正常。我回显令牌的值两次以检查值是否已更改但$ token是否相同且值是否存在。那为什么这不起作用?
答案 0 :(得分:0)
如果您包含%
标志
$sql = 'SELECT UserID FROM USER WHERE Token LIKE ?';
$stmt = $conn->prepare($sql);
$stmt->execute(array("%$token%"));
#$result = $stmt->fetch();