我正在更新MySQL记录:

mysql_query("UPDATE nodes SET text='". $text . ..... "', datealtered='CURRENT_TIMESTAMP', ..... '") or die(mysql_error());

我将PHPMyAdmin中datealtered的类型设置为CURRENT_TIMESTAMP。所有其他字段都会更新,但日期永远不会更新。我做错什么了?

最佳答案

这:

datealtered='CURRENT_TIMESTAMP'

试图将datealtered设置为文本字符串'CURRENT_TIMESTAMP'而不是CURRENT_TIMESTAMP函数的值(AKAnow())。尝试删除单引号以获取当前时间戳(而不是字符串):
datealtered=CURRENT_TIMESTAMP

MySQL倾向于无提示地忽略错误,因此它可能试图将'CURRENT_TIMESTAMP'解释为日期而无提示地失败。
我希望您能够正确地逃离$text和朋友,以避免SQL注入攻击和类似的不愉快。

09-05 21:16