Php 在Laravel中使用请求和响应
这是我的表格Php 在Laravel中使用请求和响应,php,laravel,laravel-4,laravel-routing,http-redirect,Php,Laravel,Laravel 4,Laravel Routing,Http Redirect,这是我的表格 {{ Form::open(array('url' => 'register', 'class' => 'form-signin')) }} // form username , password .. fields here {{ Form::close() }} Route::post('register', 'RegisterController@registeruser'); public function registeruser() {
{{ Form::open(array('url' => 'register', 'class' => 'form-signin')) }}
// form username , password .. fields here
{{ Form::close() }}
Route::post('register', 'RegisterController@registeruser');
public function registeruser()
{
//validation
return Redirect::to('/')->withErrors($validator); // main
}
并且路线是
{{ Form::open(array('url' => 'register', 'class' => 'form-signin')) }}
// form username , password .. fields here
{{ Form::close() }}
Route::post('register', 'RegisterController@registeruser');
public function registeruser()
{
//validation
return Redirect::to('/')->withErrors($validator); // main
}
并且控制器是
{{ Form::open(array('url' => 'register', 'class' => 'form-signin')) }}
// form username , password .. fields here
{{ Form::close() }}
Route::post('register', 'RegisterController@registeruser');
public function registeruser()
{
//validation
return Redirect::to('/')->withErrors($validator); // main
}
因为,我被重定向,所以我不会在表单中填写任何字段
我知道我应该为此使用请求和响应
我尝试了下面的回答,即使这是一个可怕的尝试
return Response::view('home')->header('utf-8', $messages);
但是,在执行上述操作时,即使页面重新加载,表单中填写的值也会消失。如果没有值消失,我如何通过错误
是否有办法填写表单中输入的字段?您需要使用
->withInput()
您需要在input()中使用
->
您可以使用Input::flash()
然后,在处理重定向的控制器方法中,可以使用input::old()访问旧输入。使用Input::all()将仅返回当前请求的数据
您还可以在返回行上使用->withInput()链接方法
在此处阅读更多信息您可以使用Input::flash()
然后,在处理重定向的控制器方法中,可以使用input::old()访问旧输入。使用Input::all()将仅返回当前请求的数据
您还可以在返回行上使用->withInput()链接方法
请在此处阅读更多信息假设您有如下验证:
$validation = Validator::make($input, $rules);
然后你需要这样做:
if( $validation->fails() )
{
return Redirect::back()->withInput()->withErrors($validator->messages());
}
请注意,
Redirect::back()
,它允许您返回表单,并使用用户输入自动填充表单假设您有如下验证:
$validation = Validator::make($input, $rules);
然后你需要这样做:
if( $validation->fails() )
{
return Redirect::back()->withInput()->withErrors($validator->messages());
}
请注意,
Redirect::back()
,它允许您返回表单并使用用户输入自动填写表单谢谢。同时我使用$input=input::all();和var_dump($input);它显示了数组(0),而表单值消失了。我如何解决这个问题?您需要使用Input::old()
来获取它们使用的旧值。如果我将旧值作为数组获取,我如何获取特定变量,即该变量的firstname,我尝试了echo$Input->('firstname');但我以错误结束我认为你可以做Input::old('firstname')
?太棒了,接受你的答案!!要在userfield中显示,我正在使用isset display Input::old('firstname')在php中进行检查,否则为空,但这是一个好的过程吗?谢谢。同时我使用$input=input::all();和var_dump($input);它显示了数组(0),而表单值消失了。我如何解决这个问题?您需要使用Input::old()
来获取它们使用的旧值。如果我将旧值作为数组获取,我如何获取特定变量,即该变量的firstname,我尝试了echo$Input->('firstname');但我以错误结束我认为你可以做Input::old('firstname')
?太棒了,接受你的答案!!要在userfield中显示,我正在使用isset display Input::old('firstname')在php中进行检查,否则会像那样为空,但这是一个好的过程吗?谢谢,它允许我返回表单,但输入值消失了,我使用的是Shift Exchange建议的Input:old(),谢谢你不需要使用Input::old如果你的路线被声明为资源,Laravel会帮你做的。Glupponi:我怎样才能将路线声明为资源?看看这里:谢谢,它允许我返回表单,但是输入值消失了,我使用的是Input:old(),正如Shift Exchange建议的那样,谢谢你不需要使用Input::old如果你的路线被声明为资源,Laravel会帮你做的。Glupponi:我怎样才能将路线声明为资源?请看这里: