PHP/MySQL更新查询问题

标签 php mysql

我在执行此查询时遇到问题:

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/

相关文章:

php - 序列 id 随日期递增 - laravel

php - 调整 "NOW()"时区

php foreach循环重复项

php - 为什么我的 mysql 服务无法使用 xampp 启动?

php - 如果在 Woocommerce 中付款失败,如何重新加载结帐页面

php - 单元测试 : Specific testing & Flow of Control

php - Xdebug V3 不会停止 VSCode 中的断点

javascript - AJAX 调用不起作用 - PHP、MySQL、jQuery/Ajax

mysql - COALESCE 两个日期返回二进制?

php - MySQL 准备语句混淆