#php #mysql #pdo
Вопрос:
if (isset($_POST['pf1'])) {
try {
$stmt = $conn->prepare( "UPDATE t1
SET pref1 = :pf1,
WHERE id = 1 ");
$stmt->bindParam(':pf1', $_POST['pf1']);
$stmt->execute();
echo "pf1";
} catch(PDOException $e) {
echo $stmt . "<br>" . $e->getMessage();
}
}
Это дает ошибку:
Фатальная ошибка: Неперехваченная ошибка: Объект PDOStatement класса не удалось преобразовать в строку
Я хочу обновить данные в БД. Но это дает мне ошибку исключения PDO.
Я не знаю, в чем проблема, я ценю любую помощь.
Комментарии:
1. Что вы пытались сделать, чтобы устранить проблему? Что же
echo $stmt
делать?
Ответ №1:
Я думаю, это может быть потому, что это заканчивается в вашем catch
.
Затем он говорит echo $stmt . "<br>" . $e->getMessage();
. Вы пытаетесь повторить $stmt (будучи объектом класса PDOStatement). Вы не можете повторить объект.
Попробуйте var_dump($stmt);
проверить, верно ли вышесказанное. Если это так, просто удалите echo
$stmt
«о», и вы должны быть хорошими.