我有一个非常具体的问题,我在网上找到的任何内容都无法告诉我我的错误在哪里。
我想一次传递两个mysql查询。另外,它们完美地工作但是它们一起失败了。我尝试加入,添加;和multi_queries方法。一切都失败了。
现在我坚持使用这段代码:
// data insertion
$sql = "INSERT INTO comments (id, name, email, comment, article_id, date) VALUES ('$id', '$name', '$email', '$comment', '$article_id', '$date')";
$sql.= "DELETE FROM comments_validation WHERE id = $id";
if ($conn->multi_query($sql) === TRUE) {
header('Location: http://url.com/index.php?success');
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
错误:
错误:INSERT INTO注释(id,name,email,comment,article_id,date)VALUES(&#39;某些值&#39;)DELETE FROM comments_validation WHERE id =&#39;其他一些值&#39; 您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以便使用正确的语法,并在“删除来自评论”之前使用WHERE id =&#39;其他一些值&#39;在第1行
提前致谢!
答案 0 :(得分:0)
您必须在此sql语句的末尾添加;
$sql = "INSERT INTO comments (id, name, email, comment, article_id, date) VALUES ('$id', '$name', '$email', '$comment', '$article_id', '$date');";
^here
答案 1 :(得分:0)
请在多个查询的每个查询的末尾添加分号作为字符串。
// data insertion
$sql = "INSERT INTO comments (id, name, email, comment, article_id, date) VALUES ('$id', '$name', '$email', '$comment', '$article_id', '$date');";
$sql.= "DELETE FROM comments_validation WHERE id = $id";
if ($conn->multi_query($sql) === TRUE) {
header('Location: http://url.com/index.php?success');
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}