谁能告诉我为什么这个更新查询不起作用?
if ($_GET['update']) {
include 'config.php';
//Connect to MYSQL Database server
$connect = mysql_connect(DB_HOST, DB_USER, DB_PASS) or die("Could not connect to MYSQL Database.");
$result = mysql_select_db(DB_NAME, $connect) or die("Could not connect to MYSQL table.");
mysql_query("UPDATE contact SET read = 1 WHERE id = '$_GET[update]'")or die("Query failed.");
echo "Update works!";
} else {
echo "Update does not work...ughh.";
}
提前谢谢你。
编辑:我得到了查询工作。对于担心安全性的任何人,我使用这个脚本作为测试,看看我是否想使用它。由于脚本有效,我刚刚添加了安全性。谢谢大家的帮助和提示。
最佳答案
什么是列读?
mysql_query("UPDATE contact SET read = 1 WHERE id = '$_GET[update]'")
从 read 的非大写判断,我怀疑您在 MySQL 中为该列使用了保留字。
参见:
要解决这个问题,只需在 read 周围加上单引号。即
mysql_query("UPDATE contact SET 'read' = 1 WHERE id = '$_GET[update]'")
或者根据 j.bruni 更好:
mysql_query("UPDATE contact SET `read` = 1 WHERE id = '$_GET[update]'")
关于PHP/MYSQL 更新查询不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10922490/