如何在不使用laravel中的会话的情况下显示成功消息

时间:2017-01-18 06:42:36

标签: php laravel

朋友需要帮助如何在不使用会话的情况下显示成功消息

3 个答案:

答案 0 :(得分:0)

只需在重定向代码之前添加此代码:

$request->session()->flash('alert-success', 'User was successful added!');

Laravel 5.1关于Flash数据:http://laravel.com/docs/5.1/session#flash-data

并为您的观点:

<div class="flash-message">
    @foreach (['danger', 'warning', 'success', 'info'] as $msg)
      @if(Session::has('alert-' . $msg))

      <p class="alert alert-{{ $msg }}">{{ Session::get('alert-' . $msg) }} <a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a></p>
      @endif
    @endforeach
  </div> <!-- end .flash-message -->

您可以使用Bootstrap Alerts视图:http://www.w3schools.com/bootstrap/bootstrap_alerts.asp

答案 1 :(得分:0)

在URL中附加变量名称,如:

xyz.com/backend/packages?status=true

在您的视图中获取url组件并检查该变量是否存在:

if(isset($status))
{
    echo '<script>alert("You message")<script>';
}

答案 2 :(得分:0)

如果要在不使用会话的情况下在请求之间显示任何消息,则需要在重定向之前将这些消息存储在某处。例如,您可以使用DB:

Message::create([
    'message' => 'Thanks for adding the comment',
    'user_id' => auth()->user()->id
]);

在重定向后获取它,然后将其删除:

$messages = Message::where('user_id', auth()->user()->id)->get();
Message::destroy($messages->pluck('id'));

另外,你可以使用文件,Redis等,就像Laravel在使用会话时一样。