در مرحله اول ثبت نام شما باید نام، موبایل و ایمیل را از کاربر دریافت کنید تا ثبت نام انجام شود. کد تایید ثبت نام هم بصورت تصادفی ایجاد و در یک session ذخیره می شود. در انتهای متد ()create در کلاس RegisterController نشست را ایجاد نمایید. یک session با نام user-xxx و مقدار موبایل کاربر ایجاد می شود.(xxx شناسه (id) کاربر است)
protected function create(array $data)
{
$user = User::create([
'name' => $data['name'],
'phone' => $data['phone'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
]);
session()->put('user-' . $user->id, $data['phone']);
return $user;
}
حال کاربر باید کد تایید را در فرم مربوطه وارد نمایید. فرض بر آن است که مسیر (Route) مربوطه را در فایل web.php بصورت زیر تعریف کرده باشید.
Route::get('/register/verify/{user}', 'UserController@verify')->middleware('check-verify')->name('register.verify');
در میان افزار CheckVerify باید بررسی کنید که آیا کاربر در مدت زمان لازم کد تایید را وارد کرده یا خیر. با اندکی تغییر در کد قبلی (تابع ()handle ) می توانید این کار را انجام دهید.
پیشنهاد می کنم که خودتان کد نویسی کنید تا مفاهیم را بهتر یاد بگیرید.
موفق باشید.