2017-02-15 117 views
1

我正在使用laravel 5.3,并且我想在用户启动网站时向用户显示一条消息。在我main.blade.php我写了下面的代码为我的网页Laravel 5.3中的Flash消息

 @if(Session::has('message')) 
     div class="alert"> 
     {{Session::has('message')}} 
     </div> 
     @endif 

上得到的消息在我的控制器功能,我想用户重定向到我的主页为此,我写下了下面的代码

return Redirect::to('/')->with('message','you have singup successfully please login'); 

现在,在我的主页上,一个div带有各自的风格,但消息不会进入此div。而不是消息“1”即将在此div中。 任何解决方案或教程将是您最好的期望。 Regards

+0

会议::闪光灯;( '消息', '你有singup成功请登录。')保持这样并检查 – Sona

+0

我必须在用户注册后显示此消息。 –

+0

通过在控制器根据条件它将来到 – Sona

回答

2

您应该使用session::has(),has函数只是检查它是否存在。要使用会话中的值,请使用session::get()

此代码应为你服务好:

<div class="alert"> {!! Session::get('message') !!} </div>

如果你想在消息只显示一次,你可以闪光的会话。

而不是使用Redirect::to('/')->with('x','y'); 的您可以使用 Session::flash('message', 'This message will be shown once!');但你必须这样做重定向之前添加的代码,你会不会需要with()了。

有关Laravel会话的详细信息看看文档:https://laravel.com/docs/5.4/session

+0

感谢@Arnold它的工作,但它不会消失,直到我刷新页面。 –

+0

后才出现。 –

+0

更确切地说,我说, 我如何设置消息的消息时间段 –

1
Try this code: 

    In Controller: 

    if ($x->save()) { 
        return Redirect::route('/')->with('success', 'Added Successfully!!'); 
       } else { 
        return Redirect::route('/')->with('fail', 'Failed'); 
       } 

    View Page: 

    @if(Session::has('success')) 
             <div class="alert alert-success">{{Session::get('success')}}</div> 
             @elseif(Session::has('fail')) 
             <div class="alert alert-danger">{{Session::get('fail')}}</div> 
             @endif 
+0

谢谢@Soniya我已经尝试过,它完全正常工作。 –

+0

快乐是我的.. @ Qadeer_Sipra – Sona

+0

我有评价:) @sona –