将 jQuery datepicker 插入 MySQL 时遇到问题

Posted

技术标签:

【中文标题】将 jQuery datepicker 插入 MySQL 时遇到问题【英文标题】:Having issues inserting jQuery datepicker into MySQL 【发布时间】:2017-01-04 10:31:46 【问题描述】:

我有一个带有 jQ​​uery 日期选择器的调查表,但在将日期插入 mysql 数据库时遇到问题。结果一直都是零。

我的 php 和 MySQL 技能不是很好,因此我们将不胜感激。

数据库中的日期格式是日期时间。

我的代码如下。

<input type="text" name="surveydate" id="datepicker">

<?php
session_start(); // Session starts here.

$servername = "";
$username = "";
$password = "";
$dbname = "";

$_SESSION['firstname'] = $_POST['firstname'];
$_SESSION['lastname'] = $_POST['lastname'];
$_SESSION['gender'] = $_POST['gender'];
$_SESSION['postcode'] = $_POST['postcode'];
$_SESSION['surveydate'] = $_POST['surveydate'];

$firstname = $_SESSION['firstname'] ;
$lastname = $_SESSION['lastname'];
$gender = $_SESSION['gender'];
$postcode = $_SESSION['postcode'];
$surveydate= $_SESSION['surveydate'];

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) 
    die("Connection failed: " . $conn->connect_error);
 

$sql = "INSERT INTO results (firstname,lastname,gender,postcode,surveydate)

VALUES ('$firstname','$lastname','$gender','$postcode','$surveydate')";

$today = date("d M Y");

if ($conn->query($sql) === TRUE) 

 else 
    echo "Error: " . $sql . "<br>" . $conn->error;


$conn->close();

?>

【问题讨论】:

phpmyadmin 中的surveydate 使用了什么数据类型??? 已提供以下解决方案并说明原因。试试这些。 :) 【参考方案1】:

如果 surveydatedatatypedate,您必须使用 'Ymd' 格式输入否则数据库将仅输入为“0000-00-00”。

确保这两种方法中的任何一种都能让您的代码运行得更好。

方法一:改变jquery datpicker本身的数据类型。

$(document).ready(function() 
$("#datepicker").datepicker( dateFormat: 'yy-mm-dd' );
);

方法二:在进入数据库时​​更改日期格式

替换:

$_SESSION['surveydate'] = $_POST['surveydate'];

与:

$_SESSION['surveydate'] = date('Y-m-d',strtotime($_POST['surveydate']));

采用任何一种方法。如果您使用方法 1,则无需遵循方法 2,反之亦然。

【讨论】:

@Phil。如果您已获得解决方案,您可能会接受我的回答作为最佳答案:)。希望你能用这个功劳支持我。 你好@Naresh Kumar.P 是的,你是对的,我刚刚接受了。感谢您的帮助。

以上是关于将 jQuery datepicker 插入 MySQL 时遇到问题的主要内容,如果未能解决你的问题,请参考以下文章

使用Codeigniter将jQuery datepicker + timepicker中的值插入MySQL datetime数据类型?

Jquery动态改变my97datepicker的日期形式

将 jQuery datepicker 应用于多个实例

JQuery日历插件My97DatePicker日期范围限制

jquery 日期控件datepicker属性详细解析

jQuery:如何从与 datepicker 插入日期的输入字段不同的元素中激活 datepicker?