简体   繁体   English

如何使用PHP将日期传递给MySQL

[英]How can I pass date to MySQL with PHP

I have a createAdmin.php form with this section: 我在本节中有一个createAdmin.php表单:

<p>Date of Birth:&nbsp; <input maxlength="4" size="4" type = "text" name = "year" value = "" placeholder="YYYY" > -
                 &nbsp; <input maxlength="2" size="2" type = "text" name = "month" value = "" placeholder="MM" > -
                 &nbsp; <input maxlength="2" size="2" type = "text" name = "day" value = "" placeholder="DD" >

Caching those values: 缓存这些值:

$year = (int) $_POST['year'];
$month = (int) $_POST['month'];
$day = (int) $_POST['day'];

And finally passing to mySQL: 最后传递给mySQL:

$formBirth = "{$year}{$month}{$day}";
$createAdmin = mysqli_query($db, "INSERT INTO admins (username, hashed_pwd, power, email, name, birth) VALUES (
'{$username}', '{$password}', '{$power}', '{$email}', '{$realName}', STR_TO_DATE('$formBirth', '%Y%m%d'))");

This method apparently doesn't work. 这种方法显然行不通。 Any ideas? 有任何想法吗?

尝试将所有这些都放入变量中并使用

$date = $year.'-'.$month.'-'.$day;

Try to add / on this one: 尝试在这一项上添加/

$formBirth = $year."/".$month."/".$day;

Or: 要么:

$formBirth = "{$year}/{$month}/{$day}";

Or using - 或使用-

$formBirth = $year."-".$month."-".$day;

Or: 要么:

$formBirth = "{$year}-{$month}-{$day}";

See Demo 观看演示

$formBirth = "{$year}-{$month}-{$day}";
Date of birth<input type="date"  name="date" />(html 5)
<?php
$formBirth = $_POST['date'];
$createAdmin = mysqli_query($db, "INSERT INTO admins (username, hashed_pwd, power, email, name, birth) VALUES (
'{$username}', '{$password}', '{$power}', '{$email}', '{$realName}',{$formBirth})");

?>

OR use this
<?php 
$year =$_POST['year'];
$month =$_POST['month'];
$day =$_POST['day'];
$formBirth=$year."/".$month."/".$day;

?>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM