我無法正常工作。我搜索了這個網站,發現很多關於這個的帖子,但是沒有一篇似乎有效。使用mysqli插入到mysql數據庫時遇到困難
這裏是我的簡單的代碼:
if (isset($_POST['submit']))
{
$startDate = strtotime($_POST['from']);
$endDate = strtotime($_POST['to']);
for($i = $startDate; $i <= $endDate; $i = strtotime('+1 day', $i))
{
$date = date('Y-m-d',$i);
//echo $date . "<br>";
$sql = ("INSERT INTO `calendar` (`Cal_Date`) VALUES (`$date`)");
}
if(!$result = $db->query($sql))
{
die('There was an error running the query [' . $db->error . ']');
}
}
的形式是一樣簡單的日期是在「YYYY-MM-DD」格式輸入。我想要做的是用一系列日期填充我的數據庫表。發生的唯一情況是一行被插入,它是「0000-00-00」,我懷疑這是因爲我已將該列設置爲Date,Not Null。當我回應結果時,一切都完美無缺,只是將它放入db似乎並不奏效。我已經試過INSERT
線包括的許多其他組合:
$sql = ("INSERT INTO `calendar` (`Cal_Date`) VALUES (`{$date}`)");
$sql = ("INSERT INTO calendar ('Cal_Date') VALUES ($date)");
$sql = ("INSERT INTO `calendar` (`Cal_Date`) VALUES (`$date`)");
$sql = $db->query("INSERT INTO `calendar` (`Cal_Date`) VALUES (`$date`)");
($ DB是db_connect.php)...我想即使其他幾個。我不知道我的db_connect.php被連接到數據庫,因爲我已經有了:
$sql = ("SELECT * FROM calendar");
進一步下跌的頁面,它的正常工作。我一直在這麼做太久,我相信我只是錯過了一些明顯的東西。我會很感激你的反饋。
的MySQL 5.5.24 PHP 5.3.13 的Apache 2.2.22
看到這裏http://www.php.net/manual/en/mysqli.quickstart.prepared-statements.php –
爲什麼不直接在數據庫中存儲的開始和結束日期,而不是在每一個日期單獨的記錄之間?你確定你想要這個數據結構嗎? – eggyal
@eggyal是的,我確實希望這樣。我正在制定員工工作計劃,我需要所有日期。 –