PHP SQLite — не возвращает правильное количество совпадений

#php #sqlite

#php #sqlite

Вопрос:

Я использую PHP Lite для поиска соответствующей строки, подобной этой…

 $count = $db->exec("SELECT * FROM users WHERE userid = '34534fgr'");
echo $count;
  

Но мой счетчик каждый раз возвращает 1, даже если значение не существует.

Я неправильно ищу?

Комментарии:

1. Предполагая, что вы используете класс SQLite PHP, exec возвращает логическое значение: php.net/manual/en/sqlite3.exec.php . Обычно он не используется select. Вам следует использовать вызов запроса: php.net/manual/en/sqlite3 . query.php

Ответ №1:

 Am I searching incorrectly?
  

да. подсказка: при отладке используйте var_dump вместо echo , это помогло бы вам увидеть проблему здесь, потому что она печатала бы bool(true); вместо int(1) или string("1") , потому что PDO::exec() возвращает логическое значение.

вот как сделать то, что вы пытались сделать:

 $count = $db->query("SELECT COUNT(*) FROM users WHERE userid = '34534fgr'",PDO::FETCH_NUM)->fetch()[0];