我已经通过帖子搜索答案,并且最接近的答案来自主题“试图通过php-with-mysql-need-帮助“使用PHP向MySQL发送日期和时间表单字段
我得到了一个带有2个输入字段的表单,用户从html5弹出日历选择器中选择日期,类型在时间,并提交表单到MySQL数据库。我无法获取日期和时间字段来验证/上传到数据库。
在我的MySQL数据库我有一个名为约会的表,名为curdate的列有一个DATE类型的列;另一列与TIME类型一起称为curtime。
我的PHP文件在文件顶部有PHP验证和SQL操作,底部有粘滞html表单。表单用来发送形式
下面是代码:
$td = date('Y-m-d H:i:s', $phpdate);
$phpdate = strtotime($td);
if(isset($_POST['submitted'])) {
require_once('mysqli_connect.php');
$errors=array();
if(empty($_POST['curdate'])) {
$errors[]='Your date did not match';
} else {
$td=mysqli_real_escape_string($dbc,trim($_POST['curdate']));
}
if(empty($_POST['curtime'])) {
$errors[]='Your time is empty';
} else {
$tt=$_POST['curtime'];
}
if(empty($errors)) {
$q="INSERT INTO users (first_name,last_name,email,curdate,curtime,physician,reason) VALUES ('$fn','$ln','$e','$td','$tt','$phys','$reason')";
[email protected]_query($dbc,$q);
if($r) {
echo '<h1>Thanks</h1>
<p>You are now registered</p><p><br/></p>';
} else {
echo '<h1>System Error</h1>
<p class="error">You could not be registered</p>';
echo '<p>'.mysqli_error($dbc).'<br/><br/>Query:'.$q.'</p>';
}
mysqli_close();
include('includes/footer.html');
exit();
} else {
echo '<h1>Error</h1>
<p class="error">The following errors occurred:<br/>';
foreach ($errors as $msg) {
echo "-$msg<br/>\n";
}
echo '</p><p> Please try again</p><p><br/></p>';
}
mysqli_close($dbc);
}
你应该可以将日期以各种口味发送给MySql,例如mm/dd/yyyy,yyyy/mm/dd ......除非创建了多义性,否则mysql不会投诉。 – sinni800