我试图在Mysqli OOP中执行UPDATE查询。我知道谷歌有很多教程,但对我没有任何作用:( 如果有人能用一个简单的查询示例编写一个简单的代码,我将不胜感激,该示例将包括创建连接对象的所有必要步骤。
这是我的代码,我试图回应一些事情来试图找到问题。 除线外,输出正常 “echo”test2“; 回声和下面的代码没有被执行..
<?php
if ((isset($_POST['title'])) && (isset($_POST['post'])))
{
$title= $_POST['title'];
$post= $_POST['post'];
$date = date("d-m-Y H:i");
//UPDATE post
echo $title, $post, $_SESSION['rec_id'];
$stmt = $connection->query("UPDATE blog_post SET title=? AND post=? WHERE id=?");
echo 'test1';
$stmt->bind_param("ssi", $title , $post, $_SESSION['rec_id']);
echo 'test2';
printf("Affected rows (UPDATE): %d\n", $connection->affected_rows);
}
?>
答案 0 :(得分:2)
你的MYSQL错了。
UPDATE blog_post SET title=? AND post=? WHERE id=?
应该是
UPDATE blog_post SET title=?, post=? WHERE id=?
您应该始终使用某种错误检查,如下所示,
if(!$stmt = $connection->prepare("UPDATE blog_post SET title=?, post=? WHERE id=?")){
die($connection->error);
}
您也从未致电$stmt->execute();
。
此外,您不能将$stmt = $connection->query();
与预准备语句一起使用。使用$stmt = $connection->prepare();
。