Php 使用用户编辑更新数据库
我试图用一个用户在论坛中编辑的帖子更新我的数据库。整个编辑表单正在运行,除了当他们点击编辑表单提交并进入主论坛页面,但数据库和帖子没有改变 当按下“提交编辑”按钮时,我看到:Php 使用用户编辑更新数据库,php,Php,我试图用一个用户在论坛中编辑的帖子更新我的数据库。整个编辑表单正在运行,除了当他们点击编辑表单提交并进入主论坛页面,但数据库和帖子没有改变 当按下“提交编辑”按钮时,我看到: <input name="a_id" type="hidden" value="<? echo $rows['a_id']; ?>"> <input name="question_id" type="hidden" value="<? echo $rows['questi
<input name="a_id" type="hidden" value="<? echo $rows['a_id']; ?>">
<input name="question_id" type="hidden" value="<? echo $rows['question_id']; ?>">
<input type="submit" name="Submit" value="edit post">
有什么想法吗
编辑
对于那些认为这个问题与@mario不同有用的人来说,问题在于我发送到保存编辑页面的变量
<input name="a_id" type="hidden" value="<? echo $rows['a_id']; ?>">
<input name="question_id" type="hidden" value="<? echo $rows['question_id']; ?>">
首先,我会让语法更漂亮一点
$foor = $bar;
foreach()
{
}
我不会像那样与$u帖子合作。制作一个数组,例如
$data=array()
比你走
foreach ($_POST as $key => $value)
{
$data[$key] => mysql_real_escape_string($value);
}
之后,您的$sql需要如下所示:
$sql = "UPDATE $tbl_name SET a_answer=`$data[a_answer]` WHERE a_id=$a_id AND question_id=$question_id";
然后,如果我是你,我会在你的$sql上打印 我同意Richard的观点,添加一个print语句以便直观地验证SQL将很有帮助。我还将Richard的sql更新为:$sql=“update$tbl_name SET a_answer='{$data[a_answer]}”,其中a_id=$a_id和question_id=$question_id”。。。在数组引用周围添加引号和大括号。-1完全破坏语法如何使它“稍微好一点”?您的建议中出现了许多语法错误。最后,在编写问题/答案时,请使用预览窗格检查格式。该代码看起来与上一个问题中的代码几乎相同-特别是您没有应用注释中给出的一些建议。-这里还有一个:阅读一些关于基本调试的教程您的问题有点无聊,逐行修复并不是Stackoverflow的目的。你已经在你极其基本的论坛脚本上发布了一打。在我之前的帖子中,编辑正在更新所有的答案帖子。现在它没有更新任何我不想让你厌烦。我对这一切都非常陌生,这是我需要在我的页面上修复的最后一件事,它才能完全发挥作用。你没有给出任何相关细节来说明原因。打印SQL并打印数据,将其与数据库进行比较,手动运行查询(PhpMyAdmin)以找到答案。试着自己找一次理由关于这个问题,不要再发帖了。如果你对我的问题有疑问,请不要再看我的问题了them@mario:有点刺耳。如果你不想回答,那么你不必回答。这个问题可能不太有趣,但它仍然有效。
foreach ($_POST as $key => $value)
{
$data[$key] => mysql_real_escape_string($value);
}
$sql = "UPDATE $tbl_name SET a_answer=`$data[a_answer]` WHERE a_id=$a_id AND question_id=$question_id";