PHP PDO ПРОВЕРКА ВЫПОЛНЕНИЯ ЗАПРОСА
При использовании PHP PDO для выполнения запросов важно не только сформировать корректный запрос, но и проверить его выполнение. Для этого можно воспользоваться методом execute(), который возвращает TRUE в случае успешного выполнения запроса и FALSE в противном случае. Пример кода на PHP для выполнения запроса с проверкой его выполнения:
try {
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
$stmt = $dbh->prepare("INSERT INTO users (username, password) VALUES (:username, :password)");
$stmt->bindParam(':username', $username);
$stmt->bindParam(':password', $password);
$username = "JohnDoe";
$password = "123456";
$stmt->execute();
if ($stmt->rowCount() > 0) {
echo "Запрос успешно выполнен";
} else {
echo "Ошибка выполнения запроса";
}
} catch (PDOException $e) {
echo "Возникла ошибка: " . $e->getMessage();
}
В данном примере выполняется запрос на добавление новой записи в таблицу users. После выполнения запроса проверяется количество добавленных строк с помощью метода rowCount(). Если количество строк больше 0, выводится сообщение об успешном выполнении запроса, иначе выводится сообщение об ошибке выполнения запроса. Если при выполнении запроса возникли ошибки, то вызывается исключение PDOException. Важно заметить, что метод execute() может вернуть FALSE не только в случае ошибки в запросе, но и если запрос не изменил ни одной строки в базе данных. Поэтому при проверке выполнения запроса рекомендуется использовать не только метод execute(), но и метод rowCount().
Использование подготовленных запросов PDO для предотвращения SQL инъекций
PHP, PDO Основные операции (CRUD) #2
Подготовленные запросы в PDO - Динамический веб-сайт
PHP, PDO Подготовленные запросы, EXECUTE vs PREPARE Statement
enable pdo in php
Знакомство с PDO на практике, запросы к MySQL - Динамический веб-сайт