У меня есть этот маленький кусочек кода.
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 и напрямую вставляю значение в оператор подготовки, запрос работает нормально. Я повторяю значение токена дважды, чтобы проверить, изменилось ли значение, но токен $ такой же, и значение там. Так почему это не работает?
Это может работать для вас, если вы включите %
приметы
$sql = 'SELECT UserID FROM USER WHERE Token LIKE ?';
$stmt = $conn->prepare($sql);
$stmt->execute(array("%$token%"));
#$result = $stmt->fetch();
Других решений пока нет …