سلام
قبلا توی PDO میومدیم و یکسری توابع مینوشتیم برای بررسی درست بودن و عدم وجود کدهای مخرب توسط کاربر برای ورود به دیتابیس
حالا توی لاراول 7 آیا این کارها اتوماتیک انجام میشه یا باید دوباره دستی بررسی کنیم ؟
کد نمونه آپدیت جدولی که نوشتم را میزارم
public function edit(Request $request)
{
if (Gate::allows('user')) {
$id = $request['id'];
$mobile = strtr($request['mobile'], array('۰' => '0', '۱' => '1', '۲' => '2', '۳' => '3', '۴' => '4', '۵' => '5', '۶' => '6', '۷' => '7', '۸' => '8', '۹' => '9', '٠' => '0', '١' => '1', '٢' => '2', '٣' => '3', '٤' => '4', '٥' => '5', '٦' => '6', '٧' => '7', '٨' => '8', '٩' => '9'));
$mobile2 = strtr($request['mobile2'], array('۰' => '0', '۱' => '1', '۲' => '2', '۳' => '3', '۴' => '4', '۵' => '5', '۶' => '6', '۷' => '7', '۸' => '8', '۹' => '9', '٠' => '0', '١' => '1', '٢' => '2', '٣' => '3', '٤' => '4', '٥' => '5', '٦' => '6', '٧' => '7', '٨' => '8', '٩' => '9'));
$phone = strtr($request['phone'], array('۰' => '0', '۱' => '1', '۲' => '2', '۳' => '3', '۴' => '4', '۵' => '5', '۶' => '6', '۷' => '7', '۸' => '8', '۹' => '9', '٠' => '0', '١' => '1', '٢' => '2', '٣' => '3', '٤' => '4', '٥' => '5', '٦' => '6', '٧' => '7', '٨' => '8', '٩' => '9'));
$phone2 = strtr($request['phone2'], array('۰' => '0', '۱' => '1', '۲' => '2', '۳' => '3', '۴' => '4', '۵' => '5', '۶' => '6', '۷' => '7', '۸' => '8', '۹' => '9', '٠' => '0', '١' => '1', '٢' => '2', '٣' => '3', '٤' => '4', '٥' => '5', '٦' => '6', '٧' => '7', '٨' => '8', '٩' => '9'));
$this->validate(request(), [
'mobile' => 'required|regex:/(09)[0-9]{9}/|digits:11|numeric',
'phone' => 'required',
'name' => 'required',
'birthday' => 'required',
'nic_account' => 'required',
'nic_email' => 'required',
]);
DB::table('users')
->where('id', '=', $id)
->update([
'name' => $request['name'],
'phone' => $phone,
'phone2' => $phone2,
'mobile' => $mobile,
'mobile2' => $mobile2,
'nic_account' => $request['nic_account'],
'nic_email' => $request['nic_email'],
'nic_password' => $request['nic_password'],
'address' => $request['address'],
'birthday' => $request['birthday'],
]);
return Redirect::to("dashboard/editProfile")->with('successUpdate', "پروفایل شما ویرایش شد");
} else {
return redirect::to('/dashboard');
}
}
@yk5742g سلام .
از ولیدیشن ها استفاده کنید .
لاراول خوبی که داره اینه که علاوه بر ولیدیشن های دیفالتش میتونید بر اساس نیاز خودتون هر ولیدیشن و قانونی رو که بخواین اضافه کنید .
لیست rule های از پیش تعیین شده لاراول :
https://laravel.com/docs/7.x/validation#available-validation-rules
چگونگی ایجاد رول یا قانون های شخصی و کاستوم :
https://laravel.com/docs/7.x/validation#custom-validation-rules
موفق باشید
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟