PHP - 将日期插入mysql
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP - 将日期插入mysql相关的知识,希望对你有一定的参考价值。
我试图在mysql中插入日期,但每次失败并在phpmyadmin中作为0000-00-00
出现
我的日期格式类似于2012-08-06
(yyyy-mm-dd),数据库中的日期字段类型是date
。
$date = "2012-08-06";
mysql_query("INSERT INTO data_table (title, date_of_event)
VALUES('". $_POST['post_title'] ."',
'". $date ."')") or die(mysql_error());
尝试将-
更改为/
或删除它们,它不起作用。
答案
在MySQL中尝试CAST
函数:
mysql_query("INSERT INTO data_table (title, date_of_event)
VALUES('". $_POST['post_title'] ."',
CAST('". $date ."' AS DATE))") or die(mysql_error());
另一答案
尝试
$date = "2012-08-06";
$date=date("Y-m-d",strtotime($date));
另一答案
除非您想插入与“今天”不同的日期,否则可以使用CURDATE():
$sql = 'INSERT INTO data_tables (title, date_of_event) VALUES ("%s", CURDATE())';
$sql = sprintf ($sql, $_POST['post_title']);
PS!请不要忘记清理MySQL输入,尤其是通过mysql_real_escape_string()
另一答案
尝试先转换日期。
$date = "2012-08-06";
mysql_query("INSERT INTO data_table (title, date_of_event)
VALUES('" . $_POST['post_title'] . "',
'" . $date . "')")
or die(mysql_error());
另一答案
如何在卡住时调试SQL查询
打印您查询并直接在mysql或phpMyAdmin中运行它
$date = "2012-08-06";
$query= "INSERT INTO data_table (title, date_of_event)
VALUES('". $_POST['post_title'] ."',
'". $date ."')";
echo $query;
mysql_query($query) or die(mysql_error());
这样你可以确保问题不在PHP脚本中,而是在SQL查询中
如何提交有关SQL查询的问题
确保你提供足够的关闭
- 表模式
- 询问
- 错误信息是任何
另一答案
$date=$year."-".$month."-".$day;
$new_date=date('Y-m-d', strtotime($dob));
$status=0;
$insert_date = date("Y-m-d H:i:s");
$latest_insert_id=0;
$insertSql="insert into participationDetail (formId,name,city,emailId,dob,mobile,status,social_media1,social_media2,visa_status,tnc_status,data,gender,insertDate)values('".$formid."','".$name."','".$city."','".$email."','".$new_date."','".$mobile."','".$status."','".$link1."','".$link2."','".$visa_check."','".$tnc_check."','".json_encode($detail_arr,JSON_HEX_APOS)."','".$gender."','".$insert_date."')";
以上是关于PHP - 将日期插入mysql的主要内容,如果未能解决你的问题,请参考以下文章
将 jQuery datepicker 插入 MySQL 时遇到问题