Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将出生日期从html表单发送到数据库_Php_Mysql - Fatal编程技术网

Php 如何将出生日期从html表单发送到数据库

Php 如何将出生日期从html表单发送到数据库,php,mysql,Php,Mysql,我正在制作一份“工作申请”表格,用户可以申请网站上显示的工作。一切正常,除了出生日期和上传简历(稍后会处理)。如何将DOB发送到数据库 我尝试添加echo(date)只是为了测试,尽管我知道它不正确 我应该在中添加什么以将dob发送到DB $fullName = $_POST['fullName']; $email = $_POST['mobile']; $mobile = $_POST['email']; $dob = $_POST['dob']; $degree = $_POST['degr

我正在制作一份“工作申请”表格,用户可以申请网站上显示的工作。一切正常,除了出生日期和上传简历(稍后会处理)。如何将DOB发送到数据库

我尝试添加echo(date)只是为了测试,尽管我知道它不正确

我应该在中添加什么以将dob发送到DB

$fullName = $_POST['fullName'];
$email = $_POST['mobile'];
$mobile = $_POST['email'];
$dob = $_POST['dob'];
$degree = $_POST['degree'];
$expYears = $_POST['expYears'];
$position = $_POST['position'];
$whyHire = $_POST['whyHire'];
$uploadCV = $_POST['uploadCV'];
$dateApplied = $_POST['dateApplied'];


$db = new Database();
$db->connect();
$db->insert('users',array('fullName'=>$fullName,'email'=>$email, 'mobile'=>$mobile,
            'dob'=>$dob, 'degree'=>$degree, 'expYears'=>$expYears, 'position'=>$position,
            'whyHire'=>$whyHire, 'uploadCV'=>$uploadCV, 'dateApplied'=>$dateApplied));  // Table name, column names and respective values
$res = $db->getResult();
print_r($res);

if($res) {
    header("Location: http://localhost/Rocket/careers.php");
    die();
} else {
    echo "query error";
}

它应该将出生日期发布到数据库中。

如果您想通过字符串在MYSQL中存储日期,它必须具有特定的格式

对于日期,字符串可以采用以下格式:

$dob = "2000-01-31"; //what mysql expects
但要使其工作,您必须验证用户输入的日期。由于选项太多,建议使用
日期
输入字段

<input type="date" name="dob" /> 


但由于在谷歌上搜索“javascript生日脚本”并不友好。

请将“dob”数据类型更改为Varchar。这将解决问题

我应该在选择>选项元素中添加什么来将dob发送到DB?数据库中的dob是日期时间还是日期字段?好的,那么日期是什么格式?向我们展示这个
echo$_POST['dob']的结果
格式是Date,格式是0000-00-00(y-m-d)
dobDay
dobMonth
dobYear
不会在
$\u POST['dob']
中返回,这不好,因为在该字段中使用mysql日期函数会更困难。日期是正确的字段。以防止所有与数据类型相关的问题。varchar是防止错误的最简单方法,也是使简单SQLOK中日期列的简单使用复杂化的最简单方法,我将Select元素更改为input类型DATE。它成功了。我非常感谢你。