用PHP保存数据库中的错误

时间:2014-05-14 08:31:43

标签: php mysql sql date insert

希望能够将当前日期从PHP存储到mysql表中。

$date = sprintf("%'04s-%'02s-%'02s",$year_number,$month_number,$day_number);

$sql="INSERT INTO  `prg omran`.`paid`(`Comapny_id`,`Amount`,`Date`,`Creditrecord`) VALUES ('".$ID."','".$credit."','".$date."','".$yes."')";

数据库中日期的列类型为DATE。

但是数据库中的日期保存如下:0000-00-00

帮帮我。

3 个答案:

答案 0 :(得分:0)

如果您要获取当前日期,只需使用其中一个built-in MySQL functions

$sql="INSERT INTO  `prg omran`.`paid`(`Comapny_id`,`Amount`,`Date`,`Creditrecord`) 
VALUES ('".$ID."','".$credit."',curdate(),'".$yes."')";

您不必担心格式化或任何有趣的输入,您仍然可以使用许多其他功能之一进行各种加法,减法等操作。

编辑:我刚看了some information on the date system,你会遇到试图将数据压缩到日期字段的问题。前六个月有31天,接下来的5个有30天,然后最后一个有29天 - 除非它是闰年,在这种情况下它有30个。日期字段只是赢了让你把这些值插入到日期字段。

您可能需要将数据转换为时间戳并编写函数以将其编码/解码为您需要的格式。

答案 1 :(得分:0)

试试这个

$date = sprintf("%'04s-%'02s-%'02s",$year_number,$month_number,$day_number);

$sql="INSERT INTO  `prg omran`.`paid`(`Comapny_id`,`Amount`,`Date`,`Creditrecord`) VALUES      ('".$ID."','".$credit."',".$date.",'".$yes."')";

如果您想插入今天的日期使用

$sql="INSERT INTO  `prg omran`.`paid`(`Comapny_id`,`Amount`,`Date`,`Creditrecord`) 
VALUES ('".$ID."','".$credit."',curdate(),'".$yes."')";

答案 2 :(得分:0)

我需要在数据库中存储Date字段,例如VARCHAR(10)因为,mysql服务器中的DATE类型不支持波斯语(波斯语)日期。

相关问题