gpt4 book ai didi

PHP、PDO 和 MySQL - HTML 输入类型日期到 MySql DATE

转载 作者:太空宇宙 更新时间:2023-11-03 10:37:38 25 4
gpt4 key购买 nike

我检查了一长串问题,这些问题似乎与解决无法将 HTML 格式的日期生成转换为 MySQL 兼容的 DATE 格式(请注意:DATE 而不是 DATETIME)的问题有关。

使用以下 HTML 片段,我通过 POST 形成输入(请注意:表单上还有其他输入,这只是为了更容易建模而进行的分割)。

<!-- Language: HTML -->
<form method="post" action="php/editLoan.php">
<input type="date" name="dateOfLoan"/>
</form>

按下提交按钮时,信息将发布到引用的 PHP 文件中。在这里,发生了很多事情,所以我将只包括日期发生的事情。

// Language: PHP (7.1), which is the latest supported version for my host.

$dateOfLoan = $_POST["dateOfLoan"]; // Grabs the date of the loan from the postman.

$sqlDate = date("Y-m-d",strtotime($dateOfLoan)); // Converts the format.

$dbh = new PDO($this->connString, $username, $password);
$query = $dbh->prepare("INSERT INTO theTable (theDateField) VALUES ($sqlDate)");
$query->execute();

根据我在寻找答案时看到的情况,这应该可行。但是,当我转到 phpMyAdmin (4.6.6) 时,“theDateField”列显示以下条目。

c:theDateField
0000-00-00
0000-00-00
0000-00-00
0000-00-00

我不太确定哪里出错了,非常感谢一些指导!非常感谢您的帮助! :D

最佳答案

在准备好的语句中使用适当的参数,而不是变量替换。

$query = $dbh->prepare("INSERT INTO theTable (theDateField) VALUES (:date)");
$query->bindParam(':date', $sqlDate);
$query->execute();

关于PHP、PDO 和 MySQL - HTML 输入类型日期到 MySql DATE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45080373/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com