我有一些观点:mobilepage1,mobilepage2,mobilepage3,mobilepage4 en 5。 首先你去mobilepage1,然后点击“下一步”按钮,然后转到mobilepage2等。
在mobilepage2中我有一个表单,用户必须选择一些选项。然后控制器进行计算并共享一些变量:
View::share('waarschijnlijkheid',$waarschijnlijkheid);
View::share('effect',$effect);
View::share('blootstellingsfreq',$blootstellingsfreq);
View::share('risico',$risico);
在mobilepage3中显示这些变量并正确完成。
之后你会获得移动页面4和5.在mobilepage5中我还想再次显示相同的变量。我收到错误:
{"error":{"type":"ErrorException","message":"Undefined variable: waarschijnlijkheid (View: C:\\Google Drive\\htdocs\\laravel4_test4\\app\\views\\mobilepages\\mobilepage5.blade.php)","file":"C:\\Google Drive\\htdocs\\laravel4_test4\\app\\storage\\views\\49e12d376740da5fc90b17627351022b","line":25}}
我在这里读到:Laravel 4 - understanding View::share() 共享变量可以在整个应用程序中访问。那么为什么不在我的最终mobilepage5?为了测试这个,我使两个视图完全相同。
这是mobilepage5和3摘要。
<td>{{$effect}}</td>
<td>x</td>
<td>{{$blootstellingsfreq}}</td>
<td>x</td>
<td>{{$waarschijnlijkheid}}</td>
<td>=</td>
<td>{{$risico}}</td>
<td>{{ '->'}}</td>
<td>{{$risicoklasse}}</td>
这是我的路线档案:
Route::get('/', function(){
return View::make('mobilepages.login');
});
Route::post('login','MobileController@login');
Route::get('gotomobilepage1', function()
{
return View::make('mobilepages.mobilepage1', array('errormessages' => 'no messages'));
});
Route::get('mobilepage2', 'MobileController@save_firstpageform');
Route::post('gotomobilepage3', 'MobileController@save_andcalculaterisc');
Route::post('gotomobilepage4', function(){
return View::make('mobilepages.mobilepage4');
});
Route::post('gotomobilepage5', 'MobileController@gotomobilepage5function');
在我的“save_andcalculaterisc”函数中,计算i共享变量。
public function save_andcalculaterisc()
{
$input = Input::all();
$waarschijnlijkheid = $input['radio_waarschijnlijkheid'];
$blootstellingsfreq = $input['radio_blootstellingsfreq'];
$effect = $input['radio_effect'];
$risico = $blootstellingsfreq*$effect*$waarschijnlijkheid;
View::share('waarschijnlijkheid',$waarschijnlijkheid);
View::share('effect',$effect);
View::share('blootstellingsfreq',$blootstellingsfreq);
View::share('risico',$risico);
//$safetyreport = Users::find(1)->safetyreports;
if($risico<=20){
$risicoklasse = "Risico wellicht aanvaardbaar: Aandacht dagelijks overleg";
} else if ($risico>20 && $risico <= 70){
$risicoklasse = "Mogelijk risico: Aandacht vereist";
} else if ($risico>70 && $risico <= 200) {
$risicoklasse = "Belangrijk risico: Maatregelen vereist";
}else if ($risico>200 && $risico <= 400) {
$risicoklasse = "Hoog risico: Direct verbetering vereist";
}else if ($risico >= 400) {
$risicoklasse = "Zeer hoog risico: Werkzaamheden stoppen";
}
else {
$risicoklasse = "Error risicoklasse";
}
View::share('risicoklasse',$risicoklasse);
// }
return View::make('mobilepages.mobilepage3');
}
答案 0 :(得分:0)
更改此
View::share('waarschijnlijkheid',$waarschijnlijkheid);
View::share('effect',$effect);
View::share('blootstellingsfreq',$blootstellingsfreq);
View::share('risico',$risico);
致:
View::share(array('risico' => $risico, 'waarschijnlijkheid' => $waarschijnlijkheid, 'effect' => $effect, 'blootstellingsfreq' => $blootstellingsfreq ));
我认为问题在于您使用的是,
而不是=>