Здесь два вопроса в одном.
1. Как посчитать кол-во строк в бд MySQL PHP подготовленным запросом PDO?
Очень просто. Надо узнать, как в SQL считают строки, а потом выполнить подготовленный запрос.
В SQL строки считают запросом count(*)
. А в РНР строки считают только обезьяны.
Далее просто подготовить этот запрос и выполнить его
$sql = "SELECT count(*) FROM `clients` WHERE `email` = ?";
$pattern = [$data['email']];
$sth = $connection->prepare($sql);
$sth->execute($pattern);
$result = $sth->fetchColumn();
Просто как три копейки
Вопрос номер два: Пачиму ничиво нинаходит?
Ответ тоже простой -
потому что в базе данных не находится совпадения с входящими данными.
И вот здесь уже мы сталкиваемся с действительно сложной темой, которая оказывается не по плечу большинству пользователей похапе:
умение верить своим глазам, а не фантазиям.
Потому что если ты воображаешь, будто "GET-параметр принимается правильно, пользователи с нужным E-mail есть", а база данных говорит обратное, то база данных права в 100% случаев. Её писали совсем не дураки.
И если ничего не находит, то надо
проверять. Что у тебя в базе, и что у тебя в во входящих параметрах. Там могут быть непечатные символы, ты можешь обраoаться к какой-то другой базе, у тебя может быть опечатка во входящих данных.
Всё надо проверить. И ошибка обязательно найдётся.
Кроме прочего, в поисках проблем помогает
правильный код соединения с ПДО, который попросит базу данных сообщать обо всех ошибках.