我正在为我网站上存储在MySQL数据库中的某些内容创建一个“编辑”页面。我通常可以轻松地做到这一点而没有任何问题,但由于某些原因,我在这里遇到了一个非常烦人的问题。
我希望在数据库中更新标题和消息框,并且在发送更新查询时,标题已正确保存,但是消息似乎只是在字段中添加了一个“0”?
这是我的PHP已删除验证(没有它仍然会出现问题):
if(isset($_POST['saveChanges'])){
$title = mysql_real_escape_string(stripslashes($_POST['message']));
$message = mysql_real_escape_string(stripslashes($_POST['title']));
$savequery = "UPDATE messages SET message = '$message' AND title = '$title' WHERE id = '$postid'";
$saveresult = mysql_query($savequery);
if($saveresult){
//do something
} else if(!$saveresult){
//do something
}
}
HTML表单:
<form action="edit.php" method="post">
<input name="title" type="text">
<textarea name="message"></textarea>
<button type="submit" name="saveChanges"> Save Changes </button>
</form>
之前只是希望有人遇到过这个问题,当我尝试调试时没有错误,它在完成时运行了我的成功消息,并且正如我所说的那样,数据确实正确添加了标题,但是对于消息,它添加了一个“0”。
答案 0 :(得分:3)
您的更新语句应使用逗号而不是AND:
http://dev.mysql.com/doc/refman/5.0/en/update.html
$savequery = "UPDATE messages SET message = '$message', title = '$title' WHERE id = '$postid'";