簡體   English   中英

將日期插入mysql數據庫

[英]inserting dates into mysql database

我有一個簡單的表單,該表單的隱藏字段的值為:

<?php echo date('Y-m-d'); ?>

當我通過我的PHP處理腳本提交表單時,表單上的所有內容都會與日期分開進入數據庫。

這是我的SQL:

$sql = "INSERT INTO wp_reminders (dateofentry, ipaddress, type) VALUES ('$_POST[dateofentry]','$_POST[ipaddress]' ,'$_POST[type]')";

當我在處理頁面上回顯日期時,它顯示正常。

我在數據庫中設置了以下內容:

 dateofentry date NOT NULL

以上是否有任何想法?

插入MySQL的任何日期必須符合MySQL可以解析的格式之一,或者必須進行轉換。 ISO 8601是首選格式,通常為YYYY-MM-DD HH:MM:SS

如果您使用PDO:

$sql = "INSERT INTO wp_reminders (dateofentry, ipaddress, type) VALUES (:dateofentry, :ipaddress, :type)";
$statement = $pdo->prepare($sql);
$statement->bindParam(":dateofentry", strtotime(date("Y-m-d H:i:s")), PDO::PARAM_STR);
$statement->bindParam(":ipaddress", $_POST['ipaddress'], PDO::PARAM_STR);
$statement->bindParam(":type", $_POST['type']), PDO::PARAM_STR);
$statement->execute();

除非您期望表單需要很長時間才能處理,否則在創建查詢時提供日期可能是有意義的。 如果沒有,您可以始終將strtotime調用放入表單中。

您必須使用以下語法創建sql查詢:

$sql = "INSERT INTO wp_reminders (dateofentry, ipaddress, type) VALUES ('".addslashes($_POST['dateofentry'])."','".addslashes($_POST['ipaddress'])."' ,'".addslashes($_POST['type'])."')";

在您的示例中,您沒有用雙引號包裝索引鍵...

而且,您實際上不應該將php變量放入字符串中,最好將其連接起來。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM