0
私はLaravel5 *を学び始めました。現在、私はいくつかの基本的な管理パネルに取り組んでいます。私は、クエリユーザーの詳細を更新して保護するコントローラ
$hasuser = User::where('email','=',$request['email'])->where('id','!=',$request['id'])->first();
は、セキュリティから、それは良いですわからないんだけど、この更新プログラムはどのようにユーザーの詳細
public function update(UserRequest $request){
$user = User::find($request['id']);
$hasuser = User::where('email','=',$request['email'])->where('id','!=',$request['id'])->first();
if($hasuser){
$request->session()->flash('alert-error','User with given email address already exist. Plese try with another email address!!.');
return redirect()->route('admin.users');
}
$user->name = $request['name'];
$user->email = $request['email'];
$user->phone = $request['phone'];
$user->role = $request['role'];
if(!empty($request['password'])){
$password = bcrypt($request['password']);
$user->password = $password;
}
if($user->save())
$request->session()->flash('alert-success','User updated successfully.');
else
$request->session()->flash('alert-error','Can not update User now. Please try again!!.');
return redirect()->route('admin.users');
}
のためにこれを持って
になど、ユーザー/ delte /編集を作成し、この変数を表示するSQLの注入ポイントは、$request['email']
、$request['id']
ここで良いアプローチは何ですか?
答えをいただきありがとうございます。 Laravelの検証ユーザー入力に特別なことがあると教えてください。私はいくつかの特別な機能を意味する...あなたは私に例を示すことができますか? – VLS
たとえば、次のようなものです: '!filter_var($ request ['email']、FILTER_VALIDATE_EMAIL)'? – VLS
新しいパスワードで更新する古いパスワードを尋ねて、更新時に確認することもできます – Learner