Вставьте DOB в MySQL из Laravel - PullRequest
0 голосов
/ 09 мая 2018

Я создал форму с тремя различными полями ввода, т. Е. Днем, месяцем и годом, и мне нужно вставить ее в базу данных в столбце «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>

Ответы [ 2 ]

0 голосов
/ 09 мая 2018

Вы должны просто использовать ввод даты в 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

0 голосов
/ 09 мая 2018
  $da $request->birthday_day. ' ' . $request->birthday_month.' '. $request->birthday_year

Вы можете попробовать это.

...