PDO 中的 fetchall 错误
fetchall error in PDO
我正在尝试编写代码以将新项目插入数据库。
if(isset($_POST['btnAddVeg'])){
$addVegType = $_POST['txtAddVegType'];
$AddVegName = $_POST['txtAddVegName'];
$insertQuery = 'insert into vegetables (vegetable_type, vegetable_id) values ("$addVegType", "$AddVegName")';
$statement2 = $db->prepare($insertQuery);
$statement2->execute();
$results2 = $statement2->fetchAll();
$statement2->closeCursor();
foreach($results2 as $result2){
echo "<table border = '0'><th>ID</th><th>Type</th><th>Name</th> <tr><td>".$result2['vegetable_id'].'</td>';
echo "<td>".$result2['vegetable_type'].'</td>';
echo "<td>".$result2['vegetable_name'].'</td></tr></table>';
}
我收到此错误:
致命错误:未捕获的 PDOException:SQLSTATE[HY000]:/vvvvvvvvvvvvvvvvvvvvvvvvvvvvvv/task9.php(54) 中的一般错误:PDOStatement->fetchAll() #1 {main} 抛出 vvvvvvvvvvv/task9.php 第 54 行
可能简单得可笑,但我错过了什么?
谢谢
执行 INSERT
语句不会 return 结果集对象。
只需删除执行 statement2->fetchAll
的行。
并删除引用 $results2
的行。
如果我们正在执行 SELECT
语句,我们将需要它来获取结果集(一组行)returned。
同样重要的是要指出:代码容易受到 SQL 注入。
我正在尝试编写代码以将新项目插入数据库。
if(isset($_POST['btnAddVeg'])){
$addVegType = $_POST['txtAddVegType'];
$AddVegName = $_POST['txtAddVegName'];
$insertQuery = 'insert into vegetables (vegetable_type, vegetable_id) values ("$addVegType", "$AddVegName")';
$statement2 = $db->prepare($insertQuery);
$statement2->execute();
$results2 = $statement2->fetchAll();
$statement2->closeCursor();
foreach($results2 as $result2){
echo "<table border = '0'><th>ID</th><th>Type</th><th>Name</th> <tr><td>".$result2['vegetable_id'].'</td>';
echo "<td>".$result2['vegetable_type'].'</td>';
echo "<td>".$result2['vegetable_name'].'</td></tr></table>';
}
我收到此错误:
致命错误:未捕获的 PDOException:SQLSTATE[HY000]:/vvvvvvvvvvvvvvvvvvvvvvvvvvvvvv/task9.php(54) 中的一般错误:PDOStatement->fetchAll() #1 {main} 抛出 vvvvvvvvvvv/task9.php 第 54 行
可能简单得可笑,但我错过了什么?
谢谢
执行 INSERT
语句不会 return 结果集对象。
只需删除执行 statement2->fetchAll
的行。
并删除引用 $results2
的行。
如果我们正在执行 SELECT
语句,我们将需要它来获取结果集(一组行)returned。
同样重要的是要指出:代码容易受到 SQL 注入。