【发布时间】:2016-02-03 10:44:41
【问题描述】:
我最近遇到了一个问题,我无法解决。我有一个客户预订表格,他们会在其中获得一个下拉菜单,该菜单连接到包含治疗等的数据库,显示所有数据,我还有一个 jQuery DatePicker,并进一步计划很快实现一个 jQuery TimePicker。
当我尝试将要更新的表单提交到 mySQL 数据库时,没有任何数据通过。它甚至没有显示为数组乳清我var_dump($_POST) 整个事情。我还有一个文本区域,它说数据通过了,但实际上并没有出现在数据库中。
这里是var_dump($_POST):
这里是数据库下拉列表PHP代码:
<!-- All database connection stuff followed by the following: -->
$query = "SELECT * FROM `Treatments`";
$result = mysql_query($query, $con);
$options = "";
if (!$result){
die("No results found.");
}
while ($row = mysql_fetch_array($result)){
$options .= "<option>$row[1]</option>";
}
?>
这是插入我的数据库的内容:
- 我将 mySQL 中的 DataTypes 设置为 DATE for Date 和 TIME for Time -
这是我的 PHP:
<?php
var_dump($_POST);
$hostname = 'hostname';
$dbname = 'dbname';
$username = 'username';
$password = 'password';
$con=mysql_connect($hostname,$username,$password) or die("Failed to connect to MySQL: " . mysql_error());
$db=mysql_select_db($dbname,$con) or die("Failed to connect to MySQL: " . mysql_error());
$insert = "INSERT INTO Booking_request_form (Treatment, Date, Time, Message) VALUES('".$_POST["Treatment"]."','".$_POST["Date"]."', '".$_POST["Time"]."', '".$_POST["Message"]."')";
var_dump($insert);
$handle = mysql_query($insert);
var_dump($handle);
?>
这是我的 HTML 表单:
我已将 TimePicker 注释掉,因为它对我不起作用。
<form action="treatment_form.php" method="post">
<div class="heading1">
<p>Select Your Treatment:</p>
</div>
<div class="dropdown">
<select><?php echo $options; ?></select>
</div>
<div class="heading2">
<p>Select Your Date:</p>
<input type="text" id="datepicker"/>
<script>
$(function() {
$( "#datepicker" ).datepicker({dateFormat: 'dd/mm/yy'});
});
</script>
</div>
<div class="heading3">
<p>Select Your Time:</p>
<input type="text" id="timepicker"/>
<!-- <script>
$(function($) {
$(function() {
$('input.timepicker').timepicker();
});
})(jQuery);
</script> -->
</div>
<div class="heading4">
<p>Add a message for our Staff:</p>
<textarea name="message" placeholder="Enter Message..."></textarea>
</div>
<div class="submit">
<input type="submit" value="Request Booking" id="Submit">
</div>
</form>
【问题讨论】:
-
你必须给
name输入字段<input type="text" id="datepicker" name="date"/> -
@SearchAndResQ 让我试试 :)
-
不要使用 mysql_* 。它们在 PHP7 中被完全删除。
-
@Drudge 是的,我知道,我很快就会改变。
-
并检查一下:Keywords and Reserved Words in MySQL。字段名称
date和time可能会导致问题。
标签: javascript php jquery html mysql