ايمن ميلاد نشر 3 أغسطس أرسل تقرير نشر 3 أغسطس السلام عليكم لماذا اثناء الضغط علي زر تعديل تظهر مشكلة تالية public function edit($id, Request $request) { $student = Student::findOrFail($id); return view('student.edit', ['student' => $student]); } public function update(Request $request, $id) { // Find the student by ID $student = Student::findOrFail($id); // Validate the input data $validatedData = $request->validate([ 'name_std' => 'required|string|max:255', 'num_std' => 'required|string|max:255', 'email_std' => 'required|email|max:255', 'date_student' => 'required|date', 'adress_std' => 'required|string|max:255', 'phone' => 'required|string|max:20', ]); // Update the student's details $student->name = $validatedData['name_std']; $student->registration_number = $validatedData['num_std']; $student->email = $validatedData['email_std']; $student->date_of_birth = $validatedData['date_student']; $student->address = $validatedData['adress_std']; $student->phone = $validatedData['phone']; $student->save(); // Return a success response return redirect()->route('student.index')->with('success', 'Student data updated successfully.'); } صفحة edit.blade.php <form action="{{ route('students.edit', $student->id) }}" class="form-inline" method="POST"> @csrf @method('patch') <div class="row"> <div class="col-md-4 mb-3"> <label for="name_std" class="form-label">اسم الطالب</label> <input type="text" class="form-control" id="name_std" name="name_std" placeholder=" اسم الطالب" style="width:80%;" value="{{ $student->name_std }}"> </div> <div class="col-md-4 mb-3"> <label for="num_std" class="form-label">رقم القيد</label> <input type="text" class="form-control" id="num_std" name="num_std" placeholder="رقم القيد" style="width:80%;" value="{{ $student->num_std }}"> </div> <div class="col-md-4 mb-3"> <label for="email_std" class="form-label">البريد الالكتروني</label> <input type="email" class="form-control" id="email_std" name="email_std" placeholder="البريد الالكتروني" style="width:80%;" value="{{ $student->email_std }}"> </div> <div class="col-md-4 mb-3"> <label for="date_student" class="form-label">تاريخ الميلاد</label> <input type="date" class="form-control" id="date_student" name="date_student" style="width:80%;" value="{{ $student->date_student }}"> </div> <div class="col-md-4 mb-3"> <label for="adress_std" class="form-label">العنوان</label> <input type="text" class="form-control" id="adress_std" name="adress_std" placeholder=" العنوان" style="width:80%;" value="{{ $student->adress_std }}"> </div> <div class="col-md-4 mb-3"> <label for="phone" class="form-label">رقم الهاتف</label> <input type="text" class="form-control" id="phone" name="phone" placeholder="رقم الهاتف" style="width:80%;" value="{{ $student->phone }}"> </div> </div> <button type="submit" class="btn btn-primary">تعديل</button> </form> <?php use Illuminate\Support\Facades\Route; use App\Http\Controllers\StudentController; use Illuminate\Routing\Route as RoutingRoute; Route::get('/student', [StudentController::class, 'index'])->name('/student'); Route::get('/student/create', [StudentController::class, 'create'])->name('/student/create'); Route::post('/student/create', [StudentController::class, 'store'])->name('/student/create'); Route::get('/students/{student}/edit', [StudentController::class, 'edit'])->name('students.edit'); Route::patch('/students/{student}/update', [StudentController::class, 'update'])->name('students.update'); 1 اقتباس
0 محمد عاطف17 نشر 3 أغسطس أرسل تقرير نشر 3 أغسطس بتاريخ 12 دقائق مضت قال ايمن ميلاد: action="{{ route('students.edit', $student->id) }}" الخطأ هنا حيث أن هذا المسار من نوع get وهو المسار الخاص بإظهار form التعديل . والصحيح هو إستخدام مسار students.update الخاص بتعديل بيانات المستخدم وهو من نوع patch ويمكنك إستبدال الجزء السابق بالتالي : action="{{ route('students.update', $student->id) }}" وهذا سيحل المشكلة إن شاء الله. اقتباس
0 ايمن ميلاد نشر 3 أغسطس الكاتب أرسل تقرير نشر 3 أغسطس بتاريخ منذ ساعة مضت قال محمد عاطف17: الخطأ هنا حيث أن هذا المسار من نوع get وهو المسار الخاص بإظهار form التعديل . والصحيح هو إستخدام مسار students.update الخاص بتعديل بيانات المستخدم وهو من نوع patch ويمكنك إستبدال الجزء السابق بالتالي : action="{{ route('students.update', $student->id) }}" وهذا سيحل المشكلة إن شاء الله. يظهر خطا بعد الضغط علي زر تعديل Undefined variable $PATCH /students/27/update HTTP/1.1 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 Accept-Encoding: gzip, deflate, br, zstd Accept-Language: ar,en-US;q=0.9,en;q=0.8 Cache-Control: max-age=0 Connection: keep-alive Content-Length: 170 Content-Type: application/x-www-form-urlencoded Cookie: XSRF-TOKEN=eyJpdiI6IjBWTkMyYlZTZUZ5cVpVT0tIaXl2bVE9PSIsInZhbHVlIjoiMGJQdEN4a3hFOVREUjlhWE1tVmV2cmRLbnBPdXU0WTVMazNmcWtmRTB1RW9GZHhYWkxkTzRzYmpXYS80THVXZU9ZOHFuWUZyWFpqMisrMmZ4T2gzZWs0SUtMeFRVYVBRb2svV2FnbUN6cmpOdVVHTGFrYUo0cFdtbHpLbU9zYTciLCJtYWMiOiJjMGQ3YzkwMzM5MjFkNGExOWNiYjJmZjRmZDFkNDkwOWEwYmFhOTdiY2U4YzljMDRmN2ExZDkxMDAwMDRlODFhIiwidGFnIjoiIn0%3D; laravel_session=eyJpdiI6IlEwd0hhRkFGak9EenhicThQakpaUEE9PSIsInZhbHVlIjoiQllzVUZvN3BtdjlaQkQwM056aTliS2hlckYrZE5zM2tTQ2J6REp6SkszRmlNS0JmZDFGSjlUTVNrYy9PSitwMTNrS1k4V0FyZzhCMm80emxLVzZ0Ymdmd0xuMmJoN2pVTXNTYjNsR0s3UEZ3d2FYSU9XVjN4TEZLMEJLellpSE0iLCJtYWMiOiJmMzNjNDFhNjg1YTI2Y2MwOWI0ZmQ0ZDI2YWIyMDM2ZTU3MmEzM2JjZmRlOTMwMTVlYzFhZDI4MzFiYzQ0ZmZiIiwidGFnIjoiIn0%3D Host: 127.0.0.1:8000 Origin: http://127.0.0.1:8000 Referer: http://127.0.0.1:8000/students/27/edit Sec-Ch-Ua: "Not)A;Brand";v="99", "Google Chrome";v="127", "Chromium";v="127" Sec-Ch-Ua-Mobile: ?0 Sec-Ch-Ua-Platform: "Windows" Sec-Fetch-Dest: document Sec-Fetch-Mode: navigate Sec-Fetch-Site: same-origin Sec-Fetch-User: ?1 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36 Cookie: XSRF-TOKEN=41DWMOmUJVMomEHkA3zhzHNboxEatwQDwpQ8RPE7; laravel_session=0J6yFcsnJ2rkS3PcNDmv0iP2my6vXmaHQ4DYhFlR _token=41DWMOmUJVMomEHkA3zhzHNboxEatwQDwpQ8RPE7&_method=patch&name_std=hmed&num_std=222222&email_std=ahmed%40gmail.com&date_student=2222-02-22&adress_std=libya&phone=3333 1 اقتباس
0 محمد عاطف17 نشر 3 أغسطس أرسل تقرير نشر 3 أغسطس بتاريخ 57 دقائق مضت قال ايمن ميلاد: يظهر خطا بعد الضغط علي زر تعديل Undefined variable $PATCH /students/27/update HTTP/1.1 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 Accept-Encoding: gzip, deflate, br, zstd Accept-Language: ar,en-US;q=0.9,en;q=0.8 Cache-Control: max-age=0 Connection: keep-alive Content-Length: 170 Content-Type: application/x-www-form-urlencoded Cookie: XSRF-TOKEN=eyJpdiI6IjBWTkMyYlZTZUZ5cVpVT0tIaXl2bVE9PSIsInZhbHVlIjoiMGJQdEN4a3hFOVREUjlhWE1tVmV2cmRLbnBPdXU0WTVMazNmcWtmRTB1RW9GZHhYWkxkTzRzYmpXYS80THVXZU9ZOHFuWUZyWFpqMisrMmZ4T2gzZWs0SUtMeFRVYVBRb2svV2FnbUN6cmpOdVVHTGFrYUo0cFdtbHpLbU9zYTciLCJtYWMiOiJjMGQ3YzkwMzM5MjFkNGExOWNiYjJmZjRmZDFkNDkwOWEwYmFhOTdiY2U4YzljMDRmN2ExZDkxMDAwMDRlODFhIiwidGFnIjoiIn0%3D; laravel_session=eyJpdiI6IlEwd0hhRkFGak9EenhicThQakpaUEE9PSIsInZhbHVlIjoiQllzVUZvN3BtdjlaQkQwM056aTliS2hlckYrZE5zM2tTQ2J6REp6SkszRmlNS0JmZDFGSjlUTVNrYy9PSitwMTNrS1k4V0FyZzhCMm80emxLVzZ0Ymdmd0xuMmJoN2pVTXNTYjNsR0s3UEZ3d2FYSU9XVjN4TEZLMEJLellpSE0iLCJtYWMiOiJmMzNjNDFhNjg1YTI2Y2MwOWI0ZmQ0ZDI2YWIyMDM2ZTU3MmEzM2JjZmRlOTMwMTVlYzFhZDI4MzFiYzQ0ZmZiIiwidGFnIjoiIn0%3D Host: 127.0.0.1:8000 Origin: http://127.0.0.1:8000 Referer: http://127.0.0.1:8000/students/27/edit Sec-Ch-Ua: "Not)A;Brand";v="99", "Google Chrome";v="127", "Chromium";v="127" Sec-Ch-Ua-Mobile: ?0 Sec-Ch-Ua-Platform: "Windows" Sec-Fetch-Dest: document Sec-Fetch-Mode: navigate Sec-Fetch-Site: same-origin Sec-Fetch-User: ?1 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36 Cookie: XSRF-TOKEN=41DWMOmUJVMomEHkA3zhzHNboxEatwQDwpQ8RPE7; laravel_session=0J6yFcsnJ2rkS3PcNDmv0iP2my6vXmaHQ4DYhFlR _token=41DWMOmUJVMomEHkA3zhzHNboxEatwQDwpQ8RPE7&_method=patch&name_std=hmed&num_std=222222&email_std=ahmed%40gmail.com&date_student=2222-02-22&adress_std=libya&phone=3333 هل قمت بتغير ال method في ال form إلي get ؟ من فضلك يرجي إرفاق صورة كاملة للخطأ وملفات المشروع إن أمكن. اقتباس
0 ايمن ميلاد نشر 3 أغسطس الكاتب أرسل تقرير نشر 3 أغسطس الان قمت بتغير دالة update public function update(Request $request, $id) { $validatedData = $request->validate([ 'name_std' => 'required|string|max:255', 'num_std' => 'required|integer', 'email_std' => 'required|email|max:255', 'date_student' => 'required|date', 'adress_std' => 'required|string|max:255', 'phone' => 'required|string|max:20', ]); try { $student = Student::findOrFail($id); $student->update($validatedData); return redirect()->route('/student'); } catch (\Exception $e) { return redirect()->route('/student'); } } ماذا لو اريد عمل نظام تسجيل دخول بحيث يكون لدي اثنين user طالب وادمن اقتباس
السؤال
ايمن ميلاد
السلام عليكم لماذا اثناء الضغط علي زر تعديل تظهر مشكلة تالية
صفحة edit.blade.php
4 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.