我在执行此查询时遇到问题:
if(isset($_POST['updateRecord'])) {
mysql_query("UPDATE files SET title = '$_POST[title]', description = '$_POST[description]', internal = '$_POST[accessFile]', category = '$_POST[category]' WHERE title = '$_POST[title]'");
header("Location: system-management.php?viewFiles=on");
}
当标题重定向到正确的页面时,它肯定会输入 if 语句。我已将表单提交设置为使用 post 方法,即使我使用 get 方法,我也可以看到我的表单数据正在传递。
我尝试在查询中引用 header 位置和错误报告(或死亡),但没有出现任何错误
表单提交按钮位于表格列内,如下所示:
<input type='submit' value='Save Changes' name='updateRecord' />
我在这里遗漏了一些明显的东西吗?
最佳答案
您必须按如下方式使用大括号
mysql_query("UPDATE files SET title = '{$_POST[title]}',
description = '{$_POST[description]}', internal = '{$_POST[accessFile]}',
category = '{$_POST[category]}' WHERE title = '{$_POST[title]}'");
需要大括号来转义变量表达式。请参阅Strings关于 PHP 文档。您也可以引用this answer on stackoverflow了解有关字符串中大括号的用法的更多信息。
关于PHP/MySQL更新查询问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8449020/