2

我知道这个主题有一些答案,但我很新鲜,无法做到我已经将 Jquery UI DatePicker 插入到 PHP 代码中,但是当我向 MySql 发送数据时,我得到了这个错误:Incorrect date value: '' for column 'date' at row 1

<html>
<head>

<script>
    $(document).ready(function() {
    $("#datepicker").datepicker({
        dateFormat: 'yy-mm-dd'
        });
    })
</script>
</head>

</body>
<form action="query_insert.php" method="post">
<input type="text" id="datepicker">
<body>

查询插入.php:

<?php
$con = mysqli_connect("127.0.0.1", "root", "user", "pass");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql="INSERT INTO expenses (date) VALUES ('$_POST[datepicker]'
?> 

我必须改变什么才能让它工作?

4

3 回答 3

2

你的html有很多问题..

</body>
<form action="query_insert.php" method="post">
<input type="text" id="datepicker">
<body>

应该

<body>
<form action="query_insert.php" method="post">
<input type="text" id="datepicker" name="datepicker">
<input type="submit" value="INSERT DATE">
</form>
</body>

基本上,您必须在字段中添加一个name属性才能将input其包含在请求中_POST_GET您还应该关闭form(但这不会阻止它被发布)

此外,您的body标签是错误的方式。

在您的query_insert.php文件中,您需要完成 INSERT 语句:

$sql="INSERT INTO expenses (date) VALUES ('$_POST[datepicker]'

应该

$sql="INSERT INTO expenses (date) VALUES ('" . $_POST['datepicker'] . "')";

警告:我会确保你$_POST['datepicker']在插入之前验证它

于 2013-10-07T11:19:53.930 回答
0
dateFormat: 'yy-mm-dd', (OKE)

php函数;

$theValue = ($theValue != "") ?“'”。$价值。“'“ : “无效的”;

输入-> 2013-10-6

输出 -> '2013-10-6'

Mysql 插入 => '2013-10-6'

我们完成了..

于 2013-10-07T11:22:03.863 回答
-1

在这里您可以找到更多信息:

PHP mysql插入日期格式

但是你可以试试

    $sql="INSERT INTO expenses (date) VALUES ( date('yyy-mm-dd','$_POST[date]'))
于 2013-10-07T11:17:20.677 回答