在date中从datepicker插入日期到MySQL数据库

时间:2017-09-13 12:56:14

标签: datepicker

我正在尝试从datepicker插入日期,但sql语句不能正常工作。 这是代码:

    if(isset($_POST['confirm']))
{   
    $order_finish_time = $_POST['order_finish_time'];
    $note = $_POST['note'];
    $finish_query = mysqli_query($link, "INSERT INTO orderdetails SET order_finish_time=$order_finish_time AND note=$note WHERE order_id=$order_id");
    $order_r = mysqli_fetch_array($finish_query);
    if(isset($order_r))
    {   
        $result = mysqli_query($link, "UPDATE orderdetails SET order_status = 'Order_Finished' WHERE order_id=$order_id");
        ?>
        <script>alert('Order confirmed!');</script>
        <script>document.location = 'orderdetails.php';</script>
        <?php
    }
    else
    {
        ?>
        <script>alert('Something wrong');</script>
        <script>document.location = 'orderdetails.php';</script>
        <?php
    }           
}

其他部分代码正在工作,我得到错误的消息。如果您能在我的代码中发现错误,请帮助我。

我正在使用的表格是:

<html>
<head>
</head>
<body>
	<form class="form-horizontal" method="post"> 
		<div class="row">
			<div class="col-xs-12">
				Order will be finished :
				<input id="datepicker" class="form-control" name="order_finish_time"  required/>
			</div>
		</div>
		<button type="submit" name="confirm" id="confirm" class="btn btn-success btn-lg" style="width: 100%;">
			<span class="glyphicon glyphicon-ok-sign"></span>
			Confirm
		</button>
	</form>

	<!-- datepicker -->
	<script>
	$( "#datepicker" ).datepicker({
		dateFormat : 'yy-mm-dd'
	});
	</script>
</body>
</html>

这是我桌子的照片: enter image description here

1 个答案:

答案 0 :(得分:0)

您的代码在许多方面似乎都不完整。头部没有定义jQuery和jQuery UI。 您的表单缺少名称为text的字段。 没有建立数据库连接。 变量$order_id未在您的代码中定义。

执行语句后使用var_dump(mysqli_error_list($link));查看SQL中可能存在的错误。这是程序风格。

您的查询完全错误。您不能使用where子句插入,它用于选择,更新和删除。

正确的插入查询将是

$finish_query = mysqli_query($link, "INSERT INTO `orderdetails` (`order_finish_time`, `note`) VALUES ('$order_finish_time', '$note')");

请解释您的计划应该做什么。它现在的编写方式没有意义。这是有效的,但由于我不知道你的意图,它可能是 - 逻辑错误。

<?php
if (isset($_POST['confirm'])) {   
    $order_finish_time = $_POST['order_finish_time'];
    $note = $_POST['note'];
    $link = mysqli_connect('localhost', 'root', '', 'orderdetails');
    $finish_query = mysqli_query($link, "INSERT INTO `orderdetails` (`order_finish_time`, `note`) VALUES ('$order_finish_time', '$note')");
    $order_id = mysqli_insert_id($link);
    if($finish_query === true)
    {
        $result = mysqli_query($link, "UPDATE `orderdetails` SET `order_status` = 'Order_Finished' WHERE `id`=$order_id");
        ?>
            <script>alert('Order confirmed!');</script>
            <script>document.location = 'orderdetails.php';</script>
        <?php
    }
    else
    {
        ?>
            <script>alert('Something wrong');</script>
            <script>document.location = 'orderdetails.php';</script>
        <?php
    }           
}

?>