मेरे लार्वा एप्लिकेशन में मेरे पास जन्म तिथि डालने के लिए एक इनपुट फ़ील्ड है,

मेरी तिथि का प्रारूप d/m/y होना चाहिए और मेरी आयु सीमा 18-70 . होनी चाहिए

मेरे नियंत्रक की store विधि के अंदर मेरे पास dob के लिए निम्नलिखित सत्यापन नियम हैं।

'date_of_birth'=>['required','bail','date','date_format:d/m/y',function ($attribute, $value, $fail) {

                    $age=Carbon::createFromFormat('d/m/y', $value)->diff(Carbon::now())->y;
                    if($age<18||$age>70){
                        $fail('Âge invalide. l\'âge devrait être 18-70');
                    }

                },]

लेकिन हर बार जब मैं 23/12/1995 जैसी सही तिथि के साथ फॉर्म जमा करने का प्रयास करता हूं तो यह कहता रहता है कि दिनांक प्रारूप अमान्य है

0
Volka Dimitrev 25 नवम्बर 2021, 09:59
Carbon::createFromFormat('d/m/y') में वर्ष बड़ा होना चाहिए 'd/m/Y'
 – 
fatm
25 नवम्बर 2021, 10:05
अब काम नहीं कर रहा
 – 
Volka Dimitrev
25 नवम्बर 2021, 10:08
'date_format:d/m/y Y भी अपरकेस होना चाहिए। ऐसा इसलिए है क्योंकि PHP अपरकेस Y का उपयोग वर्ष के रूप में करती है
 – 
fatm
25 नवम्बर 2021, 10:16
कार्बन :: createFromFormat ('डी/एम/वाई', '10/10/1990') -> अंतर (अब ()) -> प्रारूप ('% y') या आर्बन :: createFromFormat ('डी/एम/ Y','10/10/1990')->diff(अब ())->y
 – 
John Lobo
25 नवम्बर 2021, 10:25
अभी भी अमान्य
 – 
Volka Dimitrev
25 नवम्बर 2021, 10:29

2 जवाब

सबसे बढ़िया उत्तर

आपको अपने कोड के साथ दो समस्याएं हैं:

1- आपको सत्यापन से 'तारीख' को हटा देना चाहिए, क्योंकि आप एक तारीख नहीं एक स्ट्रिंग पास कर रहे हैं।

2- आपको सही होने के लिए प्रारूप को सही करना चाहिए: 'd/m/Y' Y कैपिटल लेटर है।

 $rules = ['date_of_birth' => ['required', 'bail', 'date_format:d/m/Y',

            function ($attribute, $value, $fail) {
            $age = Carbon::createFromFormat('d/m/Y', $value)->diff(Carbon::now())->y;
            if ($age < 18 || $age > 70) {
                $fail('Âge invalide. l\'âge devrait être 18-70');
            }

        },
            ]];
1
OMR 25 नवम्बर 2021, 10:27

फ़ंक्शन में format विधि का प्रयोग करें

$age=Carbon::createFromFormat('d/m/y', $value)->diff(Carbon::now())->format('%y');
0
Leena Patel 25 नवम्बर 2021, 10:15
नहीं काम नहीं कर रहा
 – 
Volka Dimitrev
25 नवम्बर 2021, 10:20