因此,在我们的CRM上,我们有一个订单流程,它遵循以下方式: 发起呼叫>间距>订单>输入详细信息>付款。 这些步骤中的每一个都有一个不同的文件,包含PHP,每个文件,当单击下一个按钮时,将更改一个状态变量,该变量在一个switch case语句中在Laravel中切换。
我的问题是,有时当在一个步骤上单击下一个按钮时,它将刷新页面并重新启动订单处理。我们在此过程中使用会话变量非常多,因此我们认为这可能是会话问题。
非常感谢任何想法或意见。
答案 0 :(得分:0)
在控制器中
public function step(Request $request) {
$step = 1;
if ( $request->has('step') && $request->step != '' ) {
$step = $request->step + 1;
}
//do some other stuff
...
//don't do the following
return redirect()->back()->with('status', $status); //<-- if the page is refreshed. this is gone.
//we need to manually put it in the session
session(['status' => $status]);
return redirect()->back();
}
在视图中
@php $status = session('status') @endphp
@if( 1 == $status )
@include('steps.one')
@elseif( 2 == $status )
@include('steps.two')
...
@endif