Php 如果条件不在刀片模板中的@auth下工作

Php 如果条件不在刀片模板中的@auth下工作,php,laravel,Php,Laravel,在我的项目中,用户可以通过Facebook或注册表单注册自己 我有一个刀片模板按钮。我在限制它。如果来宾用户单击按钮,则会出现一个模式,显示“请登录或注册”。但是,如果注册用户单击按钮,我想在这里对if条件进行以下两项检查: 如果电子邮件未经验证且Facebook_id为空,则重定向至verify.email blade 如果电子邮件未经验证,但Facebook_id不为空,则重定向到促销刀片 现在来宾用户可以点击按钮,它会弹出一个用于登录/注册的弹出窗口,但是一旦用户完成了登录/注册,那么其余

在我的项目中,用户可以通过Facebook或注册表单注册自己

我有一个刀片模板按钮。我在限制它。如果来宾用户单击按钮,则会出现一个模式,显示“请登录或注册”。但是,如果注册用户单击按钮,我想在这里对if条件进行以下两项检查:

  • 如果电子邮件未经验证且Facebook_id为空,则重定向至verify.email blade
  • 如果电子邮件未经验证,但Facebook_id不为空,则重定向到促销刀片
  • 现在来宾用户可以点击按钮,它会弹出一个用于登录/注册的弹出窗口,但是一旦用户完成了登录/注册,那么其余的代码就不起作用了,它也不会为注册用户显示按钮

    完成登录/注册步骤后,当用户返回刀片服务器时,没有任何按钮,不知道为什么。似乎@auth下的代码不起作用

    刀片

    @guest
    {{{('Continue')}
    验证
    &时代;
    此页受限。请选择或生成代码

    接近 @终客 @认证 @如果(\Auth::check()&&\Auth::user()->email\u verified\u at=''&&\Auth::user()->provider\u id='') @elseif(\Auth::check()&&\Auth::user()->电子邮件地址==''&&\Auth::user()->提供者id!='') @恩迪夫 @endauth
    我自己想出来的

    所以我根据问题提出了两个条件

    1) If the email is not verified and Facebook_id is null then redirect to verify.email blade.
    
    2) If the email is not verified but Facebook_id is not null then redirect to promotion blade
    
    我忘了想想,如果用户的电子邮件已经被验证,他在页面上登陆,在这种情况下,没有为这样的用户定义操作,所以按钮没有显示

    我只是在if语句中添加了第三个条件,所以在@endif之前我只是添加了这一行

      @elseif(\Auth::user()->email_verified_at != '' && \Auth::user()->provider_id == '')
        <a  href="{{route('dynamicDropDown-for-private-seller') }}">{{ __('Continue')}}</a>
    
    @elseif(\Auth::user()->email\u verified\u at!=''&&\Auth::user()->provider\u id='')
    

    现在它的工作完美

    请尝试在@if和起始主题之间添加空格<代码>@if()@PatricNox Nope。没有工作为什么要检查
    auth()->check()
    两次?一次在
    @auth
    中,另一次在
    @if
    @auth
    中,指令等于
    ,这可能是因为使用了嵌套的if而没有括号
    {
    @auth
    @if
    不使用
    {
    在它们的定义中。@BABAKASHRAFI你是对的,但我只是想再次检查我的身份验证是否有效,而且在知道数据库字段的状态之前,我想确保我的用户已登录。
      @elseif(\Auth::user()->email_verified_at != '' && \Auth::user()->provider_id == '')
        <a  href="{{route('dynamicDropDown-for-private-seller') }}">{{ __('Continue')}}</a>