سلام مهندسین روزتون بخیر
این کد من چه مشکلی داره ؟؟ چون وقتی میخام لاگین کنم میگه که اطلاعات ورود شما با هم مطابقت نداره
میدونم که مشکل در قسمت ذخیره پسورد اما نمیدونم چه مشکلیه و چطوری حلش کنم
// i,m use Illuminate\Support\Facades\Hash;
$inputs=$request->all();
$pasword=Str::random(10);
$user=User::create([
'name'=>$inputs['name'],
'email'=>$inputs['email'],
'level'=>'clerk',
'password'=>Hash::make($pasword),
]);
به این دلیل میدونم مشکلم پسورد چون وقتی دستی توی دیتابیس رمزم رو تغییر میدم مشکلم حل میشه.
خوب مشخصه شما دارید یک رشته random میسازید که احتمالا نمیدونید چی هست و بعد میاید اون رشته random رو هش میکنید ! خوب آیا با ایمیل و اون رشته random لاگین میکنید ؟
قاعدتا نه
پس همونطور که ایمیل و نام رو از کاربر میگیرید باید اینجا password رو هم از کاربر بگیرید و hash بفرمایید
@hesammousavi
سلام - من پسورد رندوم تولید شدم رو برای کاربرم ایمیل میکنم .
فهمیدم مشکلم کجاست اما بلد نیستم چطوری حلش کنم لطفا راهنماییم کنید - چون توی جدول user فیلد passsword توی
protected $hidden = ['password', 'remember_token'];
این قسمت تعریف شده نمیتونم اون رو ست کنم - لطفا راهنمایی کنید بدون اینکه این تنظیمات رو به هم بریزم چطوری پسوردم رو ست کنم ؟
سلام
محسن جان سوال شما به نظرم درست نمیاد
شما در بخش اول سوالتون یک رشته راندوم رو که خودتون هم نمیدونین چیه میسازی و هش میکنی و بعد ذخیره که اینجا اقای موسوی گفتن مشکلتون و نحوه رفعش حالا شما در بخش دوم مشکل تون رو مرتبط با مخفی کردن فیلد پسورد در مدل یوزر میدونین چرا؟!( این پراپرتی برای اینکه هروقت شما اطلاعات کاربر رو خواستین همه ی فیلدها رو بهتون برگردونه جز اون دوتایی که تویی ارایه پراتکت هستن)
در ادامه بحث شما برای کاربر یک رمز تصادفی ایجاد میکنیدو هش و در ادامه براش ذخیره میکنین حالا براش همون رمز تصادفی و هش نشده رو ایمیل میکنین درسته؟ حالا مشکل چیه؟ در اصل این روش باید کار کنه درسته؟ یا مشکل دارین باهاش؟؟
@juza66
@rezajashnsaz0011
سلام @juza66 بله آقای موسوی درست میگید من یکم بد توضیح دادم اشکالم رو
یک توضیح مختصر بدم - توی سایت من یک مدیر میخاد چندتا پشتیبان برای پنل خودش تعریف کنه
من طوری پیاده سازی کردم که وقتی مدیر خواست یک پشتیبان تعریف کنه فقط کافیه اطلاعات اون پشتیبان ( نام - ایمیل - شماره تلفن) رو وارد کنه - و من توی جدول یوزر یک کاربر با این مشخصات رو ذخیره میکنم و یک رمز تصادفی برای اون تولید میکنم.
و یوزر و پسورد رو برای اون ایمیل میکنم تا بتونه بعدا لاگین کنه.
حالا من این پسورد رو که تولید میکنم مشکلی نداره تولید میشه حتی به صورت حش شده توی جدول ذخیره میشه .اما زمانی که میخام لاگین کنم میگه اطلاعات شما با هم تطابق نداره(و میدونم این ارور از پسورد تولید شده است، چون به صورت دستی وقتی توی مای اسکیوال یک پسورد از قبل تعریف شده رو جایگزین میکنم درست میشه )( و جالبه بعضی وقتا ولی درست پسورد تولید میشه و کار میکنه)
من به جدول لاگین هم دستی نزدم - یعنی همون login controller پیش فرض هستش.
public function clerk_store(Requests $requests){}
$inputs=$request->all();
$password=Str::random(8);
$user = new User();
$user->password = Hash::make($password);
$user->email =$inputs['email'];
$user->name =$inputs['name'];
$user->level='clerk';
$user->active=false;
$user->save();
}
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟