[英]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.