Mohammad Yousef3 نشر 3 أبريل 2021 أرسل تقرير نشر 3 أبريل 2021 لدي بيانات على شكل JSON كما هي أمامكم payload = { "name": "My Name", "email": "email@xyz.com", "password": "password", "gender": "male", "age": 10, "mobile_number": "0123456789", "company_name": "xyz", "verification_status": 0, "image_url": "image.png", "address": "Address", "lattitude": 0, "longitude": 0, "message": "a Message", "profession_id": 1, "designation_id": 1, "skills": [ { "id": 1, "custom" : "new custom1" } ] } وأريد أن أقوم بالتحقق من صحتها باستخدام validate قبل ادراجها في قاعدة البيانات public function store(Request $request) { $this->validate($request, [ 'name' => 'digits', 'age' => 'digits', ]); } ولكن هذا البرنامج لا يعمل, ما الحل ؟ اقتباس
0 Waleed Alfakiat نشر 3 أبريل 2021 أرسل تقرير نشر 3 أبريل 2021 بما أنّ البيانات على شكل JSON يجب أولًا قراءة محتوياتها لتتمكن Laravel من التعامل معها وذلك باستخدام الدالة: json_decode($data); التي تقوم بتحويل شكل البيانات من JSON إلى مصفوفة بعد ذلك نمررها إلى validate ونطبق القواعد على البيانات use Validator; public function store(Request $request) { $data = json_decode($request->payload, true); $rules = [ 'name' => 'digits:8', 'age' => 'digits:8' ]; $validator = Validator::make($data, $rules); if ($validator->passes()) { // الاجراءات عند عدم صحة البيانات } else { // الاجراءات عند نجاح عملية التحقق } } ولكن يجب أن نتذكر بأن القاعدة digits تقوم بالتحقق من أن القيم عبارة عن أرقام, ويجب ان نمرر لها عدد الخانات المسموح بها فتصبح هكذا: digits:8 1 اقتباس
0 بلال زيادة نشر 4 أبريل 2021 أرسل تقرير نشر 4 أبريل 2021 يجب تحويل البيانات التي تكون على شكل json إلى متغيرات PHP باستخدام json_decode ,وهذه الدالة تقوم بأخذ سلسلة JSON المشفرة وتحويلها إلى متغير PHP. فيمكننا التحقق من بيانات json في المتحكم بهذه الطريقة use Validator; public function store(Request $request) { $data = json_decode($request->payload, true); $rules = [ 'name' => 'digits:8', 'age' => 'digits:8' ]; $validator = Validator::make($data, $rules); if ($validator->passes()) { // ... } else { // ... dd($validator->errors()->all()); } } اقتباس
السؤال
Mohammad Yousef3
لدي بيانات على شكل JSON كما هي أمامكم
وأريد أن أقوم بالتحقق من صحتها باستخدام validate قبل ادراجها في قاعدة البيانات
ولكن هذا البرنامج لا يعمل, ما الحل ؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.