Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.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 如何在数据库中插入日期值_Php_Mysql_Sql - Fatal编程技术网

Php 如何在数据库中插入日期值

Php 如何在数据库中插入日期值,php,mysql,sql,Php,Mysql,Sql,这是我的html代码。我试图在数据库中插入一个日期值,但我看不出这是怎么可能的 <select name="date"> <option value="selected"> Day </option> <option value="1">1</option> <option value="2"> 2 </option> <option value="3"> 3 </option&

这是我的html代码。我试图在数据库中插入一个日期值,但我看不出这是怎么可能的

<select name="date">
  <option value="selected"> Day </option>
  <option value="1">1</option>
  <option value="2"> 2 </option>
  <option value="3"> 3 </option>
  <option value="4"> 4 </option>
</select> 

<select name="date">
  <option value="selected"> Month </option>
  <option value="jan"> jan </option>
  <option value="feb"> feb </option>
  <option value="mar"> mar </option>
  <option value="april"> april </option>
</select> 

<select name="date">
  <option value="selected"> year </option>
  <option value="1990"> 1990 </option>
  <option value="1991"> 1991 </option>
  <option value="1992"> 1992 </option>
  <option value="1993"> 1993 </option>
</select>

白天
1.
2.
3.
4.
月
简
2月
破坏
四月
年
1990
1991
1992
1993

使用serialize()和unserialize()非常简单。 还有[]这个数组,请登录您喜欢的名称。 以下是示例:

<select name="date[]">
                    <option value="selected"> Day </option>
                    <option value="1">1</option>
                    <option value="2"> 2 </option>
                    <option value="3"> 3 </option>
                    <option value="4"> 4 </option>
                </select> 

                <select name="date[]">
                    <option value="selected"> Month </option>
                    <option value="jan"> jan </option>
                    <option value="feb"> feb </option>
                    <option value="mar"> mar </option>
                    <option value="april"> april </option>
                </select> 

               <select name="date[]">
                    <option value="selected"> year </option>
                    <option value="1990"> 1990 </option>
                    <option value="1991"> 1991 </option>
                    <option value="1992"> 1992 </option>
                    <option value="1993"> 1993 </option>
                </select>
查看

$date = unserialize($date);
            echo $date[0]."/ ".$date[1]."/ ".$date[2];

你可以用几种方法来做

方式1:您可以提供不同的名称来选择输入,如-

<select name="dd">
    <option value="selected"> Day </option>
    <option value="1">1</option>
    <option value="2"> 2 </option>
    <option value="3"> 3 </option>
    <option value="4"> 4 </option>
</select> 

<select name="mm">
    <option value="selected"> Month </option>
    <option value="jan"> jan </option>
    <option value="feb"> feb </option>
    <option value="mar"> mar </option>
    <option value="april"> april </option>
</select> 

<select name="yy">
    <option value="selected"> year </option>
    <option value="1990"> 1990 </option>
    <option value="1991"> 1991 </option>
    <option value="1992"> 1992 </option>
    <option value="1993"> 1993 </option>
</select> 
方式2:您可以将它们命名为数组,如下所示

$date = $_POST['dd'].'/'.$_POST['mm'].'/'.$_POST['yy'];
<select name="date[]">
    <option value="selected"> Day </option>
    <option value="1">1</option>
    <option value="2"> 2 </option>
    <option value="3"> 3 </option>
    <option value="4"> 4 </option>
</select> 

<select name="date[]">
    <option value="selected"> Month </option>
    <option value="jan"> jan </option>
    <option value="feb"> feb </option>
    <option value="mar"> mar </option>
    <option value="april"> april </option>
</select> 

<select name="date[]">
    <option value="selected"> year </option>
    <option value="1990"> 1990 </option>
    <option value="1991"> 1991 </option>
    <option value="1992"> 1992 </option>
    <option value="1993"> 1993 </option>
</select> 

注意:我建议您使用类型为
date的输入字段,或者在文本输入字段中使用日期选择器。

您的
PHP
代码在哪里?您尝试过什么?您还可以创建一个输入框,输入日期……这是php的核心基础:从表单中获取数据并对其进行处理。仅仅因为您的值是日期,并不意味着它与数据库提交的任何其他表单有神奇的不同。提示:如果您将组件命名为
date\u day
date\u month
date\u year
,您将有一个更轻松的时间来处理它们。这应该是,或
YYYY-MM-DD
,使其与SQL数据库配合使用效果最佳。然后,您可以在月份选项中设置数值,然后将它们连接为您期望的格式。如果月份值是数字的,这将更干净。显示标签只是供人使用的。所以你应该像这样使用-Jan,这样会使事情变得不那么复杂。我也不相信浏览器会以任何特定的顺序返回内容,
[]
符号是用于复选框的,因此以不同的方式命名这些选择器也会有所帮助。这应该在中,或者
YYYY-MM-DD
中,以便它能最好地与SQL数据库配合使用。它目前正在正常工作
<select name="date[]">
    <option value="selected"> Day </option>
    <option value="1">1</option>
    <option value="2"> 2 </option>
    <option value="3"> 3 </option>
    <option value="4"> 4 </option>
</select> 

<select name="date[]">
    <option value="selected"> Month </option>
    <option value="jan"> jan </option>
    <option value="feb"> feb </option>
    <option value="mar"> mar </option>
    <option value="april"> april </option>
</select> 

<select name="date[]">
    <option value="selected"> year </option>
    <option value="1990"> 1990 </option>
    <option value="1991"> 1991 </option>
    <option value="1992"> 1992 </option>
    <option value="1993"> 1993 </option>
</select> 
$date = $_POST['date'][0].'/'.$_POST['date'][1].'/'.$_POST['date'][2];