Php 如何将日期作为参数插入mysql?
我有以下代码:Php 如何将日期作为参数插入mysql?,php,mysql,date,parameters,Php,Mysql,Date,Parameters,我有以下代码: function dbInsert() { global $dbcon, $dbtable; global $inputData; $sqlQuery = 'INSERT INTO ' . $dbtable . ' (id_author, date, title, description) VALUES (?, ?, ?, ?)'; $stmt = $dbcon->prepare($sqlQuery); echo $sqlQuery
function dbInsert()
{
global $dbcon, $dbtable;
global $inputData;
$sqlQuery = 'INSERT INTO ' . $dbtable . ' (id_author, date, title, description) VALUES (?, ?, ?, ?)';
$stmt = $dbcon->prepare($sqlQuery);
echo $sqlQuery;
$stmt->bind_param('isss', $inputData['idAuthor'], $inputData['date'], $inputData['title'], $inputData['description']);
$stmt->execute();
$stmt->close();
header('Location: ./news.php?order=' . $_GET['order'] . '&sort=' . $_GET['sort'] . '&filter=' . $_GET['filter'] . '&page=' . $_GET['page'] . '');
}
$inputData['date']格式为dd.mm.yyyy ex(18.02.2010)
我找不到日期参数,所以我尝试将其作为字符串插入,对吗?我假设我需要告诉mysql如何处理输入,但是找不到关于这个主题的任何东西。在ORACLE中,如果有助于澄清我的问题,则等效于TO_DATE(?'dd.mm.yyyy')。您可以查看该函数。它接受一个格式参数。格式参数的允许值如下所述
您可以使用日期/时间列 并使用STR_TO_DATE函数: 或者,您可以将其转换为unix时间戳,并将其插入INT列中
$sqlQuery = 'INSERT INTO ' . $dbtable . ' (id_author, date, title, description)' .
' VALUES (?, STR_TO_DATE(?, \'%d.%m.%Y\'), ?, ?)';