-2

我将此查询表示为一个字符串(它被缩短以使其更易于阅读):

$query = 'INSERT INTO mytable (ke_voucher_date) VALUES (\'%s\')';

现在这就是我接下来要做的:

$query = vsprintf($query, array_map('mysql_real_escape_string', $params));
mysql_query($query);

$params 是一个包含所有应该保存的值的数组,在这种情况下(因为它被缩短了)只有格式为 dd.mm.yyyy (21.04.2012) 的日期。例如,结果是 21.04.2026。代码有什么问题,想法?也许是%s?

谢谢!

4

1 回答 1

1

“21.04.2012”不是 MySQL 喜欢的格式。您应该始终将日期格式设置为Y-m-d,例如2012-04-21

尽管 MySQL 尝试以多种格式解释值,但日期部分必须始终按年-月-日顺序给出(例如,'98-09-04'),而不是按月-日-年或日-月-其他地方常用的年份顺序(例如,'09-04-98'、'04-09-98')。

于 2012-05-30T07:19:40.563 回答