Php 在laravel中保存前端数据
我有Php 在laravel中保存前端数据,php,laravel,Php,Laravel,我有推荐信表,在那里我可以从用户那里得到评论,对于后端(管理员)来说,一切都很好,我的问题是前端表单,用户(登录的或来宾)可以发送他们的推荐信,但不知怎的,它不起作用,也没有显示任何错误,以查看哪个部分有问题 这是我的密码: 路线 Route::get('/write-testimonials', 'frontend\FrontendController@testimonialcreate')->name('write-testimonials'); Route::post('/write
推荐信
表,在那里我可以从用户那里得到评论,对于后端(管理员)来说,一切都很好,我的问题是前端表单,用户(登录的或来宾)可以发送他们的推荐信,但不知怎的,它不起作用,也没有显示任何错误,以查看哪个部分有问题
这是我的密码:
路线
Route::get('/write-testimonials', 'frontend\FrontendController@testimonialcreate')->name('write-testimonials');
Route::post('/write-testimonials', 'frontend\FrontendController@testimonialcreate')->name('write-testimonialsstore');
控制器:
public function testimonialcreate()
{
return view('front.testimonials-create');
}
public function testimonialcreatestore(Request $request)
{
$this->validate($request, array(
'body'=>'required',
'user_email' => 'nullable',
'user_name' => 'nullable',
'image' => 'nullable|image',
'status_id' => 'required|numeric',
'user_id' => 'nullable|numeric',
));
$testimonial = new Testimonial;
$testimonial->body = $request->input('body');
$testimonial->user_email = $request->input('user_email');
$testimonial->user_name = $request->input('user_name');
$testimonial->status_id = $request->input('status_id');
$testimonial->user_id = $request->input('user_id');
if ($request->hasFile('image')) {
$image = $request->file('image');
$filename = 'Testimonial' . '-' . time() . '.' . $image->getClientOriginalExtension();
$location = public_path('images/');
$request->file('image')->move($location, $filename);
$testimonial->image = $filename;
}
$testimonial->save();
return redirect()->back()
->with('success', 'Testimonial sent!');
}
和我的blade
<form action="{{route('write-testimonialsstore')}}" method="POST" enctype="multipart/form-data">
{{ csrf_field() }}
<div class="col-md-8">
@guest
<div class="row">
<div class="col-md-4">
{{Form::label('user_email', 'Email')}}
{{Form::text('user_email', null, array('class' => 'form-control'))}}
</div>
<div class="col-md-4">
{{Form::label('user_name', 'Name')}}
{{Form::text('user_name', null, array('class' => 'form-control'))}}
</div>
<div class="col-md-4">
{{Form::label('image', 'Image')}}
{{Form::file('image', array('class' => 'form-control'))}}
</div>
</div>
@endguest
<div class="row">
<div class="col-md-12">
<div class="mt-20">
{{Form::label('body', 'Write your testimonial')}}
{{Form::textarea('body', null, array('class' => 'form-control'))}}
</div>
</div>
</div>
</div>
<div class="col-md-4">
<div class="row">
<label for="status_id" hidden>Status</label>
<input type="hidden" name=status_id" value="1">
@auth
<label for="user_id" hidden>User</label>
<input type="hidden" name="user_id" value="{{ Auth::user()->id }}" placeholder="{{ Auth::user()->username }}">
@endauth
</div>
</div>
<div class="mt-20">
{{ Form::submit('Send', array('class' => 'btn btn-success')) }}
</div>
</form>
{{csrf_field()}}
@客人
{{Form::label('user_email','email')}
{{Form::text('user_email',null,array('class'=>'Form control'))}
{{Form::label('user_name','name')}
{{Form::text('user_name',null,array('class'=>'Form control'))}
{{Form::label('image','image')}
{{Form::file('image',array('class'=>'Form control'))}
@终客
{{Form::label('body','Write your commissional')}
{{Form::textarea('body',null,array('class'=>'Form control'))}
地位
id}}“占位符=“{Auth::user()->username}}”>
@endauth
{{Form::submit('Send',array('class'=>'btn btn success'))}
有什么想法吗?看起来你误解了路线名称
Route::post('/write-testimonials', 'frontend\FrontendController@testimonialcreate')->name('write-testimonialsstore');
@
符号后的名称是操作名称。Post请求必须使用另一个操作名称。因此,只需将@estiminationalcreate
更改为@estiminationalcreatestore
路由::Post行/什么不起作用?会发生什么?您的错误日志怎么说?您要求我们调试您的代码吗?您的意思是什么通过“不起作用”"? 你必须清楚地描述它。@fubar没有错误+不会在数据库中保存任何东西这就是问题所在。嘿,兄弟,你好。。去年对我来说是忙碌的一年,很抱歉我不能帮你回答之前的问题,无论如何,我认为这里的问题是你的路线调用的方法与控制器中的方法不同。。路由:estimationalcreate
在控制器中,您拥有estimationalcreatestore
@shukshin.ivan这是基本的:p