[英]Insert into date column as 0000-00-00
美好的一天,
我嘗試使用php和mysql腳本將數據導入我的數據庫但是在日期列插入as 0000-00-00而不是它的實際日期。 請檢查下面的代碼
if (isset($_POST['submit'])) {
$i=0;
if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
echo "<h1>" . "File ". $_FILES['filename']['name'] ." uploaded successfully." . "</h1>";
}
date('Y-m-d', strtotime(`Closed On`));
$handle = fopen($_FILES['filename']['tmp_name'], "r");
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
if($i>0) {
$import="INSERT into ".$user."_products (`Invoice No`,`Receipt No`,`Category`,`Sub Category`,`ProductName`,`Sold On`,`Guest`,`GuestCenter`,
`Employee Code`,`SoldBy`,`Quantity`,`Promotion`,`Price`,`Discount`,`Prepaidcard Redemption`,`Net Price`,`Tax`,`ShippingCharge`,
`Package Redemption`,`Price Paid`,`Sale Value`,`Payment Type`,`Createdby`,`Status`,`Closed On`,`GuestCode`,`FirstVisit`,`Member`,`ClosedBy`,`BusinessUnit`)
values('$data[0]','$data[1]','$data[2]','$data[3]','".mysql_real_escape_string($data[4])."','$data[5]','".mysql_real_escape_string($data[6])."','$data[7]','$data[8]','$data[9]','$data[10]',
'$data[11]','$data[12]','$data[13]','$data[14]','$data[15]','$data[16]','$data[17]','$data[18]','$data[19]','$data[20]','$data[21]',
'$data[22]','$data[23]','$data[24]','$data[25]','$data[26]','$data[27]','$data[28]','$data[29]')";
mysql_query($import) or die(mysql_error());
}
$i++;
}
注意:我的數據庫上的日期列已關閉 。
謝謝 !
要將日期或時間戳插入數據庫,您需要創建日期對象。 用這個
date('ym-d',strtotime($ data ['closed_on']))
你now
需要將字符串傳遞給strtotime()
這將以UNIX格式返回當前時間。
date('Y-m-d', strtotime('now'));
您的陳述有兩個問題:
date('Y-m-d', strtotime(`Closed On`));
1) Closed On
:不評估任何內容。
2)用反引號括起函數參數是解析錯誤。 參數應該用單引號括起來。
用這個
date('Y-m-d', strtotime($data[24]));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.