laravel multi auth
ياجماعت الخير عندي مشكلة في الmulti auth بحيث اذا جيت ادخل كلمة المرور و الايميل يرجعلي كلمة error
ولمن عملت dd() لل
$admin
رجعلي
false
public function login(Request $r){
$admin = auth()->guard('admins');
if($admin->attempt(['Email' => $r->input('email') , 'Password' => $r->input('password') ]))
{
return redirect()->intended('admin');
}
else
{
return 'error';
}
}
يعني هنا ع طول يروح يرجعلي error زي ماهو موضح انا صورت الكود ورفعته ارجو المساعدة (٦) موجودة
ساعد بالإجابة
"إن في قضاء حوائج الناس لذة لا يَعرفها إلا من جربها، فافعل الخير مهما استصغرته فإنك لا تدري أي حسنة تدخلك الجنة."
الإجابات (4)
عدلت ع confiq/auth.php
ليتناسب مع ال custom guard اللي انا سويته لكن المشكلة انه الauth شغال وبدون ايا اخطاء
لكن لمن اشغله وادخل الايميل وكلمت المرور
في الدالة login اللي داخل ال admin controller
هنا مايتحقق شرط ال if مثل ماهو موضح في سؤوالي فوق
فيتجاهل الif وينتقل للelse مباشرتا
return 'error';
طيب هل تاكدت من المدخلات مثلا عند انشاء اليوزر بقاعدة البيانات انه يتم تشفير password ؟
ونفس الشي هل password مشفر عند اجراء الإستعلام بقاعدة البيانات للبحث عن نفس العضو ؟
هل عملت model خاص واستخدمته فيه عملية التحقق او استخدمت نفس User مودل الي يجي مع لارافيل؟ اذا خاص تاكد انك مسوي extend ل Illuminate\Foundation\Auth\User راح يغنيك عن اشياء كثير تقدر تفتح الملف وتشوف محتواه والكلاسات المستخدمه فيه لعملية التحقق وغيرها
guard الخاص بلارافيل راح يتاكد من password المدخل اذا محتاج hashing او لا ثم يكمل وانت بعد لازم تتاكد انك تتبع نفس الاسلوب
عند انشاء اي user من قبل laravel فانه يستخدم bcrypt لتشفير password جرب شفر password قبل محاولة تسجيل الدخول
اذا مااشتغل معك ياريت تستخدم زر اضافة الأكواد وتضيف جميع اكوادك الخاصه سواء custom auth الي عملته وغيرها عشان نقدر نشوف وين المشكلة
رفعت ليكيم الكود بشكل منظم بس تدخل للرابط تشوف الكود مباشره ولكم جزيل الشكر
ملف ال kernel.php
ملف admin controller
ملف ال admin model
ملف ال AuthAdmin middleware
ملف ال config/auth.php
نفس ردي السابق اذا انت تحب تسوي Custom Guard وهذا هو الواضح هنا لازم تتبع الخطوات بموقع لارافيل مو فقط تغيير بعض المسميات
لانك لو غيرت المسميات واستخدمت نفس كلاسات لارافيل مااشوف انك غيرت شي غير المسميات فقط للافتراضي مايحتاج كل هالتعب واستخدم default gaurd واذا تحب تغير بعض الإعدادات غيرها بدل عمل custom guard
اذا تحب تعمل custom guard اتبع الخطوات هنا ولازم تعمل كل methods المطلوبه للتحقق عشان يشتغل بدون مشاكل
لايوجد لديك حساب في عالم البرمجة؟
تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !