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

qzwqbdag  于 2021-06-24  发布在  Mysql
关注(0)|答案(2)|浏览(416)

**结束。**此问题需要详细的调试信息。它目前不接受答案。
**想改进这个问题吗?**更新问题,使其成为堆栈溢出的主题。

四年前关门了。
改进这个问题
这是我的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>
wlsrxk51

wlsrxk511#

你可以用几种方法来做。
方法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>

提交表单后,您可以接收php中的值,如下所示。

$date = $_POST['dd'].'/'.$_POST['mm'].'/'.$_POST['yy'];

方法2:您可以将它们命名为数组,如下所示。

<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>

在php中,您可以按如下方式接收它们

$date = $_POST['date'][0].'/'.$_POST['date'][1].'/'.$_POST['date'][2];

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

pinkon5k

pinkon5k2#

使用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>

并在serialize()函数中添加此名称键,并使用unserialize()函数取消序列化数据库值。
插入

$date = serialize($_POST['date']);

看法

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

相关问题