не работает PDO rowCount()

131
22 февраля 2022, 18:00

Есть у меня генерация токена плюс проверка на уникальность ( запрос к БД "Есть ли уже юзер с таким токеном?" ). При попытке запустить скрипт мне выдает пустоту. Возвращается ничего. Просто не работает. При чём не работает не только rowCount, а и fetchAll ( я думал с помощью него сделать проверку, раз уж rowCount не работает ). В чем может быть причина? Код:

$nuwRows = 1;
while( $numRows == 1 ) {
    $num = random_int( 8, 16 );
    $token = bin2hex(random_bytes($num));
    $query = $db->prepare("SELECT `id` FROM `users` WHERE `token` = :token LIMIT 1");
    $query->execute(array( 'token' => $token ));
    $numRows = $query->rowCount();
}
exit( $token );
Answer 1

Попробуй вот так: // ошибка в названии переменной поставь в условии nuwRows вместо numRows

$nuwRows = 1;
while ( $nuwRows == 1 ) {
    $num = random_int( 8, 16 );
    $token = bin2hex(random_bytes($num));
    $query = $db->prepare("SELECT `id` FROM `users` WHERE `token` = :token LIMIT 1");
    $query->execute(array( 'token' => $token ));
    $numRows = $query->rowCount();
}
exit( $token );
READ ALSO
Notice: Undefined variable

Notice: Undefined variable

Ошибки Undefined variable: dt on line 212 Notice: Undefined variable: add как поправить?

89
Как поменять локаль для csv файла

Как поменять локаль для csv файла

Суть в том, что нужноcsv файлом заполнить массив, чтоб загрузить его в базу, но для этого надо поставить локаль 1251

118
Cформировать верный массив по вложениям

Cформировать верный массив по вложениям

Подскажите, как получить количество повторений из подмассива? Входные данные:

79
Laravel проблема с get

Laravel проблема с get

Вид listblade

83