在更新时将CURRENT_TIMESTAMP添加到MySQL记录

Rog*_*ger 1 php mysql phpmyadmin

我正在更新MySQL记录:

mysql_query("UPDATE nodes SET text='". $text . ..... "', datealtered='CURRENT_TIMESTAMP', ..... '") or die(mysql_error());    
Run Code Online (Sandbox Code Playgroud)

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

mu *_*ort 6

这个:

datealtered='CURRENT_TIMESTAMP'
Run Code Online (Sandbox Code Playgroud)

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

datealtered=CURRENT_TIMESTAMP
Run Code Online (Sandbox Code Playgroud)

MySQL倾向于默默地忽略错误,因此它可能试图将其解释'CURRENT_TIMESTAMP'为日期并默默地失败.

我希望你能够正确地逃避$text和朋友避免SQL注入攻击和类似的不愉快.