所以我有一个普通的表单,其中包含一个出生日期字段(称为DOB(,我通过POST请求发送数据,如下所示:
$dob = $_POST['dob'];
$dob_db = date('Y-m-d', strtotime(str_replace('-', '/', $dob)));
我在同一页面上遇到多个DOB字段的情况,如下所示:
<input type="text" id="dob[]" class="datepicker" name="dob[]" placeholder="Day/Month/Year" value="" data-parsley-required="true" data-parsley-required-message="Captain's Date of Birth is required." data-parsley-errors-container="#p1_dob-error" class="form-control">
我还有其他字段,如姓名等,我收集详细信息并发送到数据库,如下所示:
$name_array = $_POST['name'];
$mobile_array = $_POST['mobile'];
$email_array = $_POST['email'];
for ($i = 0; $i < count($name_array); $i++) {
$name = mysql_real_escape_string($name_array[$i]);
$mobile = mysql_real_escape_string($mobile_array[$i]);
$email = mysql_real_escape_string($email_array[$i]);
mysql query here, etc, etc
}
我似乎无法让 DOB 字段以相同的方式工作。也尝试了相同的方法。感谢一些帮助。
编辑:我尝试将DOB字段添加到此字段,但它不起作用。其他一切都可以很好地传递给数据库,但它只是我坚持使用的 DOB 字段。
$name_array = $_POST['name'];
$mobile_array = $_POST['mobile'];
$email_array = $_POST['email'];
$dob_array = $_POST['dob'];
$dob_db_array = date('Y-m-d', strtotime(str_replace('-', '/', $dob_array)));
for ($i = 0; $i < count($name_array); $i++) {
$name = mysql_real_escape_string($name_array[$i]);
$mobile = mysql_real_escape_string($mobile_array[$i]);
$email = mysql_real_escape_string($email_array[$i]);
$dob_db = mysql_real_escape_string($dob_db_array[$i]);
mysql query here, etc, etc
}
你试过吗?
$dob = $_POST['dob'];
$fdob = str_replace('-', '/', $dob);
$dob_db = date('Y-m-d', strtotime($fdob));
另外,您的mysql列是否设置为date
或用户定义为0000-00-00
?
我在移动设备上,所以我无法发表评论。