راکت
حل شده

مشکل در ارسال boolean با redirect route در لاراول

7 پاسخ

سلام
در قطعه کدی نیاز هست متغیری به صورت true یا false به blade ارسال کنم.

public function phoneSendMassage(Request $request){
        ...
        $user = User::where('mobile', $PhoneNumber)->firstOr(function () {
            return false;
        });
        if ($user) {
            $is_user = true;
        }$is_user = false;
        ...
        return redirect()->route('phoneVerify', ['is_user' => $is_user]);
    }

اما در blade با ارور زیر مواجه میشوم

$is_user is undefined

و در url هم به صورت زیر ارسال شده

http://127.0.0.1:8000/login/phoneVerify?is_user=0

دلیل و راه کار چیه؟

ثبت پرسش جدید

پاسخ‌ها

7
حسین شیری نژاد
حسین شیری نژاد
@hosseinshirinegad98

تخصص: programmer

بهترین پاسخ

این پارامتر رو باید از هلپر request داخل بلید بگیرید متغییر نیست که دارید مستقیم ازش استفاده میکنید

محمد حکمتی
محمد حکمتی
@mohammad.hekmaty

تخصص: مثلا backend

توی همون صفحه یه خروجی بگیرید ببینید چی مینویسه:

public function phoneSendMassage(Request $request){
        ...
        $user = User::where('mobile', $PhoneNumber)->firstOr(function () {
            return false;
        });
        if ($user) {
            $is_user = true;
        }$is_user = false;

        return $is_user;
    }

هرچند به نظر میاد مشکل از شرطتون باشه چون مقدار is_true رو برابر 0 یا false مینویسه تو روت.

محمدسجاد دباغ
محمدسجاد دباغ
@mdabbagh

تخصص: برنامه نویس لاراول

@mohammad.hekmaty

با دستور dd($is_user) به درستی false بر میگرده.

شاید پاسخ شما همین‌جا باشد

محمد حکمتی
محمد حکمتی
@mohammad.hekmaty

تخصص: مثلا backend

منظورتون چیه به درستی؟ یعنی یوزری ندارید که این شرط اجرا شه؟
@msdabbagh

محمدسجاد دباغ
محمدسجاد دباغ
@mdabbagh

تخصص: برنامه نویس لاراول

@mohammad.hekmaty
با توجه به اینکه من میخوام در یک شرط در blade ازش استفاده کنم تفاوتی در 0 یا 1 یا true یا false نیست.
اما ارور $is_user is undefined میده یعنی همون 0 هم در if شناسایی نمیشه.

محمدسجاد دباغ
محمدسجاد دباغ
@mdabbagh

تخصص: برنامه نویس لاراول

@mohammad.hekmaty
میخوام وقتی یک نفر با شماره تلفن اقدام به لاگین کرد اگر قبلا در دیتابیس نبوده ، در blade یک بخشی براش نمایش بدم.

محمدسجاد دباغ
محمدسجاد دباغ
@mdabbagh

تخصص: برنامه نویس لاراول

@hosseinshirinegad98
متشکرم به صورت زیر تونستم دریافت کنم

{{ request()->get('is_user') }}

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

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