سلام من میخوام کاربر موقع ثبت نام که شماره موبایل وارد کرد کد براش اس ام اس بشه و بعد وارد صفحات بعدی بشه و اطلاعات دیگه پر بشه
الان کد به شماره موبایل ارسال میکنم ولی وقتی کد وارد میکنم و روی دکمه ثبت نام میزنم هدایت میشه به صفحه 404
public function register(Request $request)
{
$data = $request->validate([
'phone' => 'required|unique:users,phone|digits:11|numeric|regex:/[0]{1}[0-9]{10}/',
'password' => ['required', 'string', 'min:8', 'confirmed'],
]);
$user = User::create([
'phone' => $data['phone'],
'password' => Hash::make($data['password']),
]);
$apiKey = config('services.ghasedak.key');
$code = ActiveCode::generateCode($user);
$request->session()->flash('phone' , $data['phone']);
try{
$message = "کد احراز هویت شما : " . $code . " ";
$lineNumber = "10008566";
$receptor = $data['phone'];
$api = new \Ghasedak\GhasedakApi($apiKey);
$api->SendSimple($receptor,$message,$lineNumber);
}
catch(ApiException $e){
throw $e;
}
catch(HttpException $e){
throw $e;
}
return redirect(route('phone.token'));
}
public function showToken(Request $request)
{
if(! $request->session()->has('phone')) {
return redirect(route('register'));
}
$request->session()->reflash();
return view('auth.code');
}
public function token(Request $request)
{
$request->validate([
'token' => 'required'
]);
if(! $request->session()->has('phone')) {
return redirect(route('phone.token'));
}
$user = User::findOrFail($request->session()->get('auth.user_id'));
$status = ActiveCode::verifyCode($request->token , $user);
if($status) {
$user()->activeCode()->delete();
return redirect(route('rule'));
} else {
// alert()->error('شماره تلفن و احرازهویت دو مرحلهای شما تایید نشد.' , 'عملیات ناموفق بود');
return redirect(route('phone.token'));
}
return redirect(route('phone.token'));
}
فکر میکنم بخاطر این تیکه کد باشه که به 404 هدایت میشه
$user = User::findOrFail($request->session()->get('auth.user_id'));
وقتی به این شکل مینویسم
$user = User::find($request->session()->get('auth.user_id'));
ارور زیر نمایش میده
call to a member function activecode() on null
اینجا کاربر هنوز لاگین نیست و ارور میده فقط من چجوری باید چک کنم این بخشو و دلیت کنم از دیتابیس؟
بله نمیدونم چجوری رفع کنم این مشکل رو
میخوام بعد اینکه کد برای کاربر ارسال شد و اگر کد درست بود از دیتابیس کد حذف بشه و کاربر به صفحه بعد که قوانین هست هدایت بشه
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟