Php 通过laravel 5.5中的old()获取旧输入不工作
这是我的控制器。我正在尝试验证表单并显示错误消息(如果有)。表单验证正常,但如果验证失败,则当它重定向回表单时,旧表单值将不起作用Php 通过laravel 5.5中的old()获取旧输入不工作,php,laravel-5,laravel-5.5,Php,Laravel 5,Laravel 5.5,这是我的控制器。我正在尝试验证表单并显示错误消息(如果有)。表单验证正常,但如果验证失败,则当它重定向回表单时,旧表单值将不起作用 <?php namespace App\Http\Controllers\Frontend; use App\Http\Controllers\Frontend\AbstractController as FrontendController; use Illuminate\Http\Request; use Illuminate\Support\Faca
<?php
namespace App\Http\Controllers\Frontend;
use App\Http\Controllers\Frontend\AbstractController as FrontendController;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
class ContactFormController extends FrontendController
{
protected $validationRules = [
'Name' => 'required',
'email-360' => 'required|email',
'telephone' => 'required',
'Bio' => 'required',
];
public function index(Request $request)
{
$request->flash();
$viewData = [
'meta_title' => _('Contact Us'),
'meta_description' => _(''),
];
return view('frontend.contact-form', $viewData);
}
public function saveContactForm(Request $request)
{
$validationMessages = [
'Name.required' => _('This field is required.'),
'email-360.required' => _('This field is required.'),
'telephone.required' => _('This field is required.'),
'Bio.required' => _('This field is required.'),
];
$request->flash();
$validation = Validator::make($request->all(), $this->validationRules, $validationMessages);
if ($validation->fails()) {
return redirect()->back()->withInput()->withErrors($validation);
}
}
}
这里是contact-form.blade.php,其中错误消息按预期正确显示错误,但不显示旧值
@extends('layout.front')
@section('content')
<form action="{{ action('Frontend\ContactFormController@saveContactForm',$locale) }}" method="post" class="wpcf7-form" enctype="multipart/form-data" novalidate="novalidate">
{{ csrf_field() }}
<input name="_method" type="hidden" value="POST">
<div class="entry">
<div class="label" style="vertical-align: top;">{{ _('Full Name') }}<sup>*</sup></div>
<div class="field">
<span class="wpcf7-form-control-wrap Name">
<input type="text" name="Name" value="{!! old('Name') !!}" size="40" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required" aria-required="true" aria-invalid="false">
<span role="alert" class="wpcf7-not-valid-tip">{{ $errors->first('Name') }}</span>
</span>
</div>
</div>
<div class="entry">
<div class="label" style="vertical-align: top;">{{ _('SA Email Address') }}<sup>*</sup></div>
<div class="field">
<span class="wpcf7-form-control-wrap email-360">
<input type="email" name="email-360" value="{{ old('email-360') }}" size="40" class="wpcf7-form-control wpcf7-text wpcf7-email wpcf7-validates-as-required wpcf7-validates-as-email" aria-required="true" aria-invalid="false">
<span role="alert" class="wpcf7-not-valid-tip">{{ $errors->first('email-360') }}</span>
</span>
</div>
</div>
<div class="entry">
<div class="label" style="vertical-align: top;">{{ _('Phone Number') }}<sup>*</sup></div>
<div class="field">
<span class="wpcf7-form-control-wrap telephone">
<input type="text" name="telephone" value="{{ old('telephone') }}" size="40" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required" aria-required="true" aria-invalid="false" placeholder="123-456-7890">
<span role="alert" class="wpcf7-not-valid-tip">{{ $errors->first('telephone') }}</span>
</span>
</div>
</div>
<div class="entry">
<div class="label" style="vertical-align: top;">{{ _('Tell Us About Yourself & Your Experiences As A Sugar Baby.') }}
<sup>*</sup></div>
<div class="field">
<span class="wpcf7-form-control-wrap Bio">
<textarea name="Bio" cols="40" rows="10" minlength="300" class="wpcf7-form-control wpcf7-textarea wpcf7-validates-as-required" aria-required="true" aria-invalid="false">
{{ old('Bio') }}
</textarea>
<span role="alert" class="wpcf7-not-valid-tip">{{ $errors->first('Bio') }}</span>
</span>
<br>
{{ _('(300 Character Minimum)') }}
</div>
</div>
<div class="entry">
<div class="label">{{ _('Headshot') }}<sup>*</sup></div>
<div class="field">
<span class="wpcf7-form-control-wrap Headshot">
<input type="file" name="Headshot" size="40" class="wpcf7-form-control wpcf7-file wpcf7-validates-as-required" aria-required="true" aria-invalid="false">
<span role="alert" class="wpcf7-not-valid-tip">{{ $errors->first('Headshot') }}</span>
</span>
</div>
</div>
<div class="entry">
<div class="label"></div>
<div class="field"><input type="submit" value="Send" class="wpcf7-form-control wpcf7-submit"></div>
</div>
</form>
@endsection
如何解决错误?将输入添加到重定向:
return redirect()->back()->withInput($request->all())->withErrors($validation);
使用“返回”,而不是重定向->返回为
在视图中执行{{var_dump$request}}并查看是否有旧值如果$validation->失败{//print_r$request->old//works fine return redirect->back->withInput->withErrors$validation;}@rajain你读了我的评论吗,我在视图中难过,而不是在控制器中我读了你的评论。我得到了一个未定义的变量:request with that.try{{var_dumpSession::all},如果没有,那么您没有正确地传递数据重定向->返回后是否有其他重定向发生?我已经更新了我的问题,您在echo旧的“电话”中看到了什么?如果像gdfgdg一样填写错误?@RajatJain像return back->withInput一样使用它;仅限。我没有从旧的“email-360”或旧的“Name”中获得任何值,但错误消息显示我已根据您的建议返回->withInput->withErrors$验证使用此值@拉贾贾因:那怎么办?你在echo的旧“电话”中看到了什么?如果像gdfgdg一样填写错误?
return back()->withInput()->withErrors($validation);