PHP bindParam与mysql函数

时间:2015-11-08 11:16:24

标签: php mysqli timestamp bindparam

是否可以使用PHP的OOP bind_param使用mysql内置函数?

我有以下代码,它给出了一个错误:

Fatal error:  Call to undefined function FROM_UNIXTIME() in...

代码是:

$sql = $connection->prepare("INSERT INTO table_name (value1, value2, value3)
                             VALUES (?, ?, ?)");

$sql->bind_param('sss', $value1, $value2, FROM_UNIXTIME(" . $value3) . "));
$db -> query($sql, $connection);

据我所知,错误PHP不提供FROM_UNIXTIME()方法,因此我的问题是bind_param将我的查询中的字符串编译成一些代码,然后发送到mysql db。我可以将FROM_UNIXTIME作为字符串发送到查询中,然后mysql会理解该方法并采取相应的行动。

无论如何,如何使用bind_param运行此类查询?我试图将我的日期时间转换为时间戳并将输出放入查询中,但mysql在表中仅显示零。

1 个答案:

答案 0 :(得分:1)

如果要使用占位符作为mysql函数的参数,请执行以下操作:

$sql = $connection->prepare("INSERT INTO table_name (value1, value2, value3) VALUES (?, ?, FROM_UNIXTIME(?))");
$sql->bind_param('sss', $value1, $value2, $value3);