我正在使用论坛类型系统让用户提出问题或说出他们的想法,但我遇到了与更新数据库信息相关的问题。我不知道这里出了什么问题,但我知道发生了什么。
有些帖子无法编辑。一切都会照常进行,但不会更新数据库。有些帖子的正文错误,但标题正确。
这没有意义,我会做一些测试来检查 mysql 是否正常工作.. 但在那之前,有什么想法吗?
更新:
此查询正在传递...但数据库未针对此特定行进行更新。只有这一个...
$new_body = $_POST['new_body'];
$old_body = $_POST['old_body'];
mysql_query("UPDATE questions SET body='".htmlspecialchars($new_body, ENT_QUOTES)."' WHERE body='".htmlspecialchars($old_body, ENT_QUOTES)."'") or die(mysql_error());
此外,如果有人能就 SQL 注入以及如何防止它们向我提供启发,我将不胜感激。
这些列是 id、pin、locked、body、date、numberofcomments(我知道我可以使用 php 来读取评论的数量,但我在学习之前这样做了)和视图。
更新:现在工作。将 WHERE 正文替换为 WHERE id。愚蠢的错误。不过,我仍然可以使用一些 sql 注入来启发!