اذهب إلى المحتوى

السؤال

نشر

اُبرمج على إطار العمل Laravel في نسخته 5.1 ، وأحاول إدخال قيمة التاريخ date داخل Db من نوع Mysql بالشكل التالي:

public function update(Request $request, $id)
{
  $user = User::findOrFail($id);      
  $data = $request->all();         
  $data['birthdate'] = date("Y-d-m", strtotime($data['birthdate']));
  ...
  $user->fill($data)->save();

استخدمت Elequent للمستخدم User بالشكل التالي:

public function getBirthdateAttribute() {
    return date('d/m/Y', strtotime($this->attributes['birthdate']));        
}

public function setBirthdateAttribute($value) {              
    $this->attributes['birthdate'] = Carbon::createFromFormat('Y-m-d', $value);
}

لكن الأمر لم ينجح، فكيف أحل المشكل؟

Recommended Posts

  • 0
نشر (معدل)

لحلّ المشكل، قم بتغيير السطر التالي:

date("Y-d-m", strtotime($data['birthdate']));

إلى:

date("Y-m-d", strtotime($data['birthdate']));

والسبب ببساطة أن format التاريخ يجب أن تكون على الشكل :dd-mm-yyyy، ثم يمكن تغييرها إلى الشكل dd/mm/yyyy، بالطريقة التالية:

$date = '22/05/2012';
$date = str_replace('/', '-', $date);
$date = date('Y-m-d', strtotime($date));
تم التعديل في بواسطة E.Nourddine

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...