我正在尝试从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
答案 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
}
}
?>