کیمیا
7 سال پیش توسط کیمیا مطرح شد
7 پاسخ

ریدایرکت کردن کاربر به آخرین صفحه ای که بود بعد از login

سلام دوستان. چطور باید کاربر رو به آخرین صفحه ای که قبل از لاگین کردن بود ریدایرکت کرد؟


ثبت پرسش جدید
مهدی
@code2code 7 سال پیش آپدیت شد
3

نگاه کن بذار موضوع رو برات باز کنم
اگه کاربر بدون اینکه لاگین کرده باشه یه url که نیاز به لاگین داره (auth middleware) رو درخواست کنه لاراول میاد یک کلید url.intended توی session ها ایجاد میکنه که بعد لاگین به همون صفحه برگرده حالا ما میام یه تیریک میزنیم که در واقع این کلید رو ایجاد کنیم.
برو توی Auth/LoginController متد زیر رو کپی کنقرار بده و همه چی تمومه:

    /**
     * Show the application's login form.
     *
     * @return \Illuminate\Http\Response
     */
    public function showLoginForm()
    {
        if (!session()->has('url.intended')) {
            session(['url.intended' => url()->previous()]);
        }
        return view('auth.login');
    }

کاری که این متد انجام میده اینه که اگه کلید url.intended وجود نداشته باشه اون رو ایجاد میکنه و مقدارشو url قبلی قرار میده و بعد میره به صفحه لاگین و تمام


سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 7 سال پیش مطرح شد
0

با استفاده از هلپر فاکشن

return back();


کیمیا
@kimiyarahmati 7 سال پیش مطرح شد
0

نه. منظور من رو متوجه نشدید.


مهدی
@code2code 7 سال پیش آپدیت شد
3

نگاه کن بذار موضوع رو برات باز کنم
اگه کاربر بدون اینکه لاگین کرده باشه یه url که نیاز به لاگین داره (auth middleware) رو درخواست کنه لاراول میاد یک کلید url.intended توی session ها ایجاد میکنه که بعد لاگین به همون صفحه برگرده حالا ما میام یه تیریک میزنیم که در واقع این کلید رو ایجاد کنیم.
برو توی Auth/LoginController متد زیر رو کپی کنقرار بده و همه چی تمومه:

    /**
     * Show the application's login form.
     *
     * @return \Illuminate\Http\Response
     */
    public function showLoginForm()
    {
        if (!session()->has('url.intended')) {
            session(['url.intended' => url()->previous()]);
        }
        return view('auth.login');
    }

کاری که این متد انجام میده اینه که اگه کلید url.intended وجود نداشته باشه اون رو ایجاد میکنه و مقدارشو url قبلی قرار میده و بعد میره به صفحه لاگین و تمام


sajjad
@aytan1214 5 سال پیش مطرح شد
0

این کد رو در ورپرس کجا باید قرار داد؟
ممنون میشم راهنمایی بفرمایید


حسین شفیعی
تخصص : توسعه دهنده لاراول
@hshafiei374 5 سال پیش مطرح شد
0

ببین برای اینکار :
کاربر میخواد وارد یه صفحه ای بشه که بعدش ریدایرکت میشه به صفحه ی لاگین . این ریدایرکت شدنه توی یه میدلور اتفاق میفته درسته؟
توی اون میدلور url حال حاضر رو میگیری میریزی تو یه سشن بعد وقتی کاربر لاگین شد اون سشن رو میخونی و میفرستیش به اون صفحه اوکی شد؟
در غیر اینصورت باید تو صفحه لاگین url قبلی رو بخونی اما اگه قبلش لاگین رو تو یه صفحه جدا پیاده سازی کنی url قبلی میشه اون صفحه لاگین نه اون صفحه ای که قبل از لاگین شدن داخلش بود. برای حل این مشکل لاگین شدن رو باید با یه مدال پیاده سازی کنی یعنی هر جا نیاز به لاگین شد وارد صفحه ی دیگه ای نشه کاربر همونجا به مدال باز بشه بگه باید وارد شی .
امیدوارم توضیحاتمو متوجه شده باشی:-)


marik
@kaviyani.m89 5 سال پیش مطرح شد
0

سلام
اگر قرار باشه که لاگین به صورت مدال باشه....چجوری به صفحه ای که قبلا بوده برگشت داده میشه؟


arezoo
تخصص : برنامه نویس
@arezooo1999 3 سال پیش مطرح شد
0

سلام همین کار اگر بخوایم توی رجیستر باشه چی؟


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام