【发布时间】:2014-01-30 18:04:04
【问题描述】:
我正在尝试将一些数据添加到我的数据库中,但我收到错误 Catchable fatal error: Object of class PDOStatement could not be convert to string in /var/www/mandje.php on line 114。 这是我正在使用的代码:
foreach($_SESSION["cart"] as $id => $value){
$query = $db->query('SELECT * FROM Producten WHERE ProductID ="'.$id.'" ');
$query->execute();
while($row = $query->fetch(PDO::FETCH_ASSOC)){
$price = $row['Prijs'];
$ProductID = $row['ProductID'];
}
$sql="INSERT INTO Bestellingsdetail( Bestelnummer, ProductID, Aantal, Prijs)
VALUES ($max,$ProductID,$value,$price)"; //<---- line 114
$count = $db->execute($sql);
我真的不明白这里出了什么问题。任何帮助将不胜感激:)
【问题讨论】:
-
如果你做
var_dump($max,$ProductID,$value,$price);会看到什么? -
我得到:object(PDOStatement)#3 (1) { ["queryString"]=> string(49) "SELECT MAX( Bestelnummer ) FROM Bestellingsdetail" } string(2) "17" int (2) 字符串(5) "29.98"
-
有问题。
$max是什么?你在哪里设置的? -
我做了几行: if(isset($_POST["koop"])) { $query = $db->query('SELECT MAX( Bestelnummer ) FROM Bestellingsdetail'); $查询->执行(); $max = $查询; $max ++;
-
$max = $query。为什么将$max设置为$query?我假设您想将其设置为查询的 result。