我使用html <select>
,<option>
表单来收集用户的数据。但是,当我试图将出生日保存到数据库时,我遇到了困难。
这是我想要做的:
$dob = $_POST['year'] . '-' . $_POST['month'] . '-' .$_POST['day'];
$insertInto = " INSERT INTO `users`.`information` (id, useremail, password, firstname, lastname, gender, dob, telephone)
VALUES ( NULL, '$_POST[email]','$_POST[password]','$_POST[firstname]','$_POST[lastname]','$_POST[formGender]','$dob', '$_POST[telephone]')";
它适用于$dob
以外的所有内容,有人可以指导我找到错误吗?
非常感谢。
答案 0 :(得分:2)
如果你不介意使用unix的纪元,你可以简单地把你的用户输入并做一个简单的strtotime()。它将为您提供更大的灵活性,以及如何使用date()函数显示它。
$dob = "1/1/1985";
$string = strtotime($dob);
然后把它吐出来:
$data = pull epoch result from database
$birthday = date("m/d/Y", $data);
答案 1 :(得分:0)
在进行查询调用之前,首先检查$ dob的值。然后,如果它看起来没问题(例如1984-10-10),请将你的dob设为日期/日期时间。
到现在为止,你得到了什么错误?它被设置为全0或者究竟是什么?
注意:您将接触到SQL注入。我总是建议使用PDO和几乎所有SQL查询的预准备语句。 http://mx.php.net/manual/en/pdo.prepare.php