PHP STR_TO_DATE()函数未发布

时间:2016-06-23 18:35:05

标签: php mysql html5 post

我尝试使用STR_TO_DATE()函数插入日期。由于某种原因,它一直在失败。有人可以帮忙吗?感谢

HTML:

   <form action="config.php" method="POST">
Total Sales : <br><input type="text" id="total" name="total"><br>
Company Name : <br><input type="text" id="company" name="company"><br>
Sales Type : <br><input type="text" id="type" name="type"><br>
Sales Date : <br><input type="date" id="saledate" name="saledate"><br>
Date Entered : <br><input type="date" id="dateenter" name="dateenter"><br><br>
<input type="submit" value="insert">
</form>

PHP:

<?php

$con=mysqli_connect("***","***","***","***");

$Total = $_POST['total'];
$Company = $_POST['company'];
$Type = $_POST['type'];
$Saledate = $_POST['saledate'];
$Dateentered = $_POST['dateenter'];


$sql = "INSERT INTO htgsales (SaleAmount,Company,SalesType,SalesDate,DateEntered) VALUES ('$Total','$Company','$Type',STR_TO_DATE('$Saledate', '%m/%d/%Y'),STR_TO_DATE('$Dateentered', '%m/%d/%Y'))";

if(!mysqli_query($con,$sql))
{
echo 'Insert Failed';
}
else
{
echo 'Success';
}
?>

1 个答案:

答案 0 :(得分:0)

来自MySQL文档:

  

这是DATE_FORMAT()函数的反转。它采用字符串str和格式字符串格式。如果格式字符串包含日期和时间部分,则STR_TO_DATE()返回DATETIME值;如果字符串仅包含日期或时间部分,则返回DATE或TIME值。如果从str中提取的日期,时间或日期时间值是非法的,STR_TO_DATE()将返回NULL并产生警告。

您为日期获得的帖子参数的值是多少?它们是否与您传递给该功能的格式相匹配?尝试使用$ _POST的var_dump并粘贴值,这样我们就可以检查是否有错误。