Thank you for all your help in the past. I recently got this error while trying to register a new user on my app. At this stage of registration, new user - after having verified email address - is now asked to enter a PIN which he purchased. Upon clicking verify pin, the following error occurs:
ERROR: Creating default object from empty value
This error points to my RegisterController line 216. Below is the part of my controller that is faulty and routes:
public function postPurchaseToken(Request $request)
{
$this->validate($request,['pin' => [
'required',
Rule::exists('activation_pins','pin')->where(function ($query) {
$query->where('usage_count', '<', ActivationPin::MAX_USAGE_COUNT)
->where('is_valid',true)
->where('is_active',false);
})
]]);
$user = auth()->user();
$pin = ActivationPin::wherePin($request->pin)->first();
$pin->is_active = true;
$pin->user_id = $user->id;
$pin->save();
$user->is_token_activated = true;
$user->purchase_expiration_date = null;
$user->save();
return redirect()->to('/register/verify-phone-number');
}
The line 216: $pin->is_active = true;
Routes:
Route::get('/register/verify/{email_confirmation_code}','Auth\RegisterController@confirmEmail')->name('confirm-account');
Auth::routes();
Route::get('/register/purchase-token','Auth\RegisterController@getPurchaseToken');
Route::post('/register/purchase-token','Auth\RegisterController@postPurchaseToken');
Route::get('/register/verify-phone-number/{token_id?}','Auth\RegisterController@getPhoneNumber');
Route::get('/register/verify-phone-number','Auth\RegisterController@getPhoneNumber');
Route::post('/register/call-phone-number/{token_id}','Auth\RegisterController@postSendAsCall');
Route::post('/register/verify-phone-number','Auth\RegisterController@postPhoneNumber');
Route::post('/register/verify-phone-number','Auth\RegisterController@postPhoneNumber');
Route::post('/register/send-verification-sms','Auth\RegisterController@postSendSMSToPhoneNumber');
Route::get('/register/bank-details','Auth\RegisterController@getBankDetails');
Route::post('/register/bank-details','Auth\RegisterController@postBankDetails');
Route::get('/register/select-plan','Auth\RegisterController@getSelectPackage');
Route::post('/register/select-plan','Auth\RegisterController@postSelectPackage');
Route::get('/logout', 'Auth\LoginController@logout')->name('logout.get');
I'd appreciate any help I can get on this. Thanks
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire