在控制器中我有这个代码。当我想在视图上显示公司变量时,它会给出错误。 这是我的控制者。
public function login(Request $request){
$email = $request->input('email');
$password = $request->input('password');
$validation = array(
'email' =>'required',
'password' => 'required');
//dd($email);
$validator = Validator::make($request->all(), $validation);
if ($validator->fails()) {
$messages = $validator->messages();
return redirect('login_with_assismo')
->withErrors($validator)
->withInput(Input::except('password'));
} else {
$admin = DB::table('admin')
->where('email',$email)
->where('password', $password)
->where('is_admin', 1)
->first();
if (!empty($admin)) {
$company = DB::table('company_details')
->where('id', $admin->company_id)
->pluck('company_name');
if (!empty($company)) {
return redirect('company_details')->with('company', $company);
}
}
}
}
这是我的观点
<input type="text" name="company_name" class="form-control" placeholder="Company name" value = "{{ company }}">
执行此代码时出现错误: 使用未定义的常量company_name - 假设&#39; company_name&#39; (查看:/opt/lampp/htdocs/assismo/resources/views/company_details.blade.php)
答案 0 :(得分:0)
未定义的常量错误意味着您可能尝试了类似
的内容<div><!-- or other html -->
{{ company_name}}
</div><!-- ... -->
即使它应该是
<div><!-- or other html -->
{{ $company_name}}
</div><!-- ... -->
但是,似乎你根本没有返回公司名称变量,所以可能它应该是
<div><!-- or other html -->
{{ $company }}
</div><!-- ... -->
补充说明:
您的代码非常不安全。你永远不应该在富有成效的环境中使用它。你不要加密密码或任何东西。实际上,您的密码看起来很简单。
您还应该考虑编写自己的请求(php artisan:make request)并在其他地方移动验证。
我也没有看到在这里使用DB Facade而不是您感兴趣的实际对象的理由。