繁体   English   中英

PHP-MySQL 错误插入数据

[英]PHP-MySQL error inserting data

如何解决这个问题

可捕获的致命错误:无法将 PDOStatement 类的对象转换为字符串输入。

我的PHP代码:

$a = $_POST['id'];
$b = $_POST['title'];
$c = $_POST['cat'];
$d = $_POST['cop'];
$e = $_POST['stat'];

$sql = "INSERT INTO books (book_id, book_title, book_category, no_copies, status) VALUES (:a,:b,:c,:d,:e)";
$a = $db->prepare($sql);
$a->execute(array(':a'=>$a, ':b'=>$b, ':c'=>$c, ':d'=>$d, ':e'=>$e));
header('Location: books.php');

你覆盖了你的变量$a

$a = $_POST['id']; // assign here
$a = $db->prepare($sql);// override here

尝试给一个不同的名字

$smt = $db->prepare($sql);
$smt->execute(array(':a'=>$a,':b'=>$b,':c'=>$c,':d'=>$d,':e'=>$e));
header("location: books.php");

为变量使用有意义的名称(例如,$stmt 而不是 $a,这样可以避免冲突)

$stmt = $db->prepare($sql);
$stmt->execute(array(':a'=>$a,':b'=>$b,':c'=>$c,':d'=>$d,':e'=>$e));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM