Php 存储表单中的数据时使用未定义的常量
我创建了一个模型Php 存储表单中的数据时使用未定义的常量,php,laravel,laravel-5.3,blade,Php,Laravel,Laravel 5.3,Blade,我创建了一个模型 Review.php 和它的资源控制器 ReviewController.php 有路线 Route::resource('review','ReviewController') 并创建了一个表单来获取值。我的存储方法: public function store(Request $request) { $this->validate($request, [ 'fullname' => 'required|max:255',
Review.php
和它的资源控制器
ReviewController.php
有路线
Route::resource('review','ReviewController')代码>
并创建了一个表单来获取值。我的存储方法:
public function store(Request $request)
{
$this->validate($request, [
'fullname' => 'required|max:255',
'email' => 'required',
'country' => 'required',
'tourname' => 'required',
'content' => 'required'
]);
$reviews = new Review;
$reviews->name = $request->fullname;
$reviews->email = $request->email;
$reviews->country = $request->country;
$reviews->content = $request->content;
$reviews->tour_id = $request->tourname;
if($request->hasFile('clidentpp')){
$image = $request->file('clidentpp');
$filename = time().'.'.$image->getClientOriginalName();
$location = public_path('images/client_review'.$filename);
Image::make($image)->resize(128, 128)->save($location);
$reviews->path = $location;
}
$reviews->save();
Session::flash('success','Thank you for your review !');
return back()->withInput(['tab'=>'complete']);
}
我犯了个错误
使用未定义的常量审阅-假定的“审阅”
指向行$reviews=新评论代码>。我尝试将$reviews
更改为$review
,但仍然没有成功。应该是$reviews=newreview()代码>试试这个
$review[] = '';
$review['name'] = $request->fullname;
$review['email'] = $request->email;
...
Review::create($review);
该错误消息带有文件名和行号。请发布所有错误消息,而不仅仅是位。或者至少在你的代码中识别出引起错误的行号error@RiggsFolly检查屏幕截图。你确定你有一个Review
类吗?使用未定义的常量reviews
意味着你1。访问不带引号的数组键,如$array[reviews]
,或者使用它,如echo reviews代码>。PHP使用未定义的常量作为字符串。因此,如果未定义reviews
,并且您使用它,它将像您使用echo“reviews”一样使用代码>php中我不喜欢的东西之一。未定义常量线程为字符串…小提示:当您查看屏幕截图时,可以清楚地看到$reviews
,但是reviews
部分被检测为常量,并且忽略前面的$
。这是一个有线的东西。所以我想你的代码中有一些非法字符,你看不到。完全删除该行,然后再次手工编写$reviews=newreview()代码>,以确保没有非法字符,如果问题仍然存在,则说明lavarel有问题。是否在控制器中包含Review。代码如下所示:使用路径\u来\uu\Review