【问题标题】:Insert DOB in mysql from laravel从 laravel 在 mysql 中插入 DOB
【发布时间】:2018-10-19 21:12:13
【问题描述】:

我已经制作了一个包含三个不同输入字段的表单,即日、月和年,我需要将其插入到数据库中“日期”类型的“dob”列中。如何将它们以日期格式全部插入一列中。

<div>
 <input class="birthdayInput" type="number" name="birthday_day" id="birthday_day" size="2"  maxlength="2" value=""/>

<input class="birthdayInput" type="number" name="birthday_month" 
 id="birthday_month"  size="2" maxlength="2" value=""/>

 <input class="birthdayInput" type="number" name="birthday_year" id="birthday_year" size="4"
 maxlength="4" value=""/>

</div>

【问题讨论】:

  • 提示:将它们组合成YYYY-MM-DD 格式。
  • $formData = $formRequest->all(); $dob = $formRequest->get('birthday_day') .'-' 。 $formRequest->get('birthday_month') 。 '-'。 $formRequest->get('birthday_year'); $formData['dob'] = date('d-m-Y', strtotime($dob));所以我这样做了,现在我该如何插入?
  • 1.您需要使用 tadman 指定的格式。 2. 显示您拥有的代码以及您遇到的问题。 3.不要在cmets中发布,编辑你的问题并添加它。

标签: php html mysql laravel date


【解决方案1】:
  $da $request->birthday_day. ' ' . $request->birthday_month.' '. $request->birthday_year

你可以试试这个。

【讨论】:

    【解决方案2】:

    您应该在 html 中简单地使用日期输入,这将允许用户一键选择日期。

     <form method="POST" action="{{ route('birthday.store') }}">
         <input type="date" name="birthday">
     </form
    

    然后当它碰到你的控制器时,像这样用 Carbon 格式化它:

    public function store(Request $request)
    {
        $birthday = Carbon::parse($request->birthday)->format('Y-m-d');
        //store to database here
    }
    

    您现在可以将其存储到您的表格中,确保该列是日期类型

    $table->date('birth_date');
    

    我就是这样做的。只是更轻松一点。

    如果您想保持自己的方式,只需像这样连接每个日期段:

    $birthday = $request->year . '-' . $request->month . '-' . $request->day;
    

    插入日期列sql时,日期必须是YYYY-MM-DD

    【讨论】:

      猜你喜欢
      • 2017-10-17
      • 2011-02-01
      • 1970-01-01
      • 2019-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-06
      • 2019-07-02
      相关资源
      最近更新 更多