كيفية إرسال بريد إلكتروني / رمز التفعيل باستخدام cartalyst sentinel باستخدام laravel 5.4

0

أرغب في إرسال بريد إلكتروني / رمز التفعيل إلى رسائل البريد الإلكتروني الخاصة بهم أثناء إجراء التسجيل ولكنني غير قادر على العثور على إجابة مناسبة تساعدني على إكمال عملي.

هذه هي طريقة التحكم الخاصة بي حيث أقوم بحفظ بيانات المستخدم في قاعدة بياناتي باستخدام الحارس.

public function postRegister(Request $request)
{
    $user = Sentinel::registerAndActivate($request->all());
    return redirect('/');
}

هنا أريد إرسال بريد إلكتروني / رمز التفعيل إلى بريدهم الإلكتروني عند تسجيل المستخدم.

أي مساعدة ستكون محل تقدير كبير!

                     public function postRegister(Request $request)
{
    $user = Sentinel::register($request->all());
    $activation = Activation::create($user);

    $this->sendEmail($user, $activation->code);
    return redirect('/');
}

private function sendEmail($user,$code)
{
    Mail::send('emails.activation',[

            'user' => $user,
            'code' => $code
    ], function($message) use ($user){
        $message->to($user->email);
        $message->subject("Hello $user->first_name,
        activate your account.");
    });
}

1 إجابة

0

استخدم هذا الرمز
استخدام مساحة الاسم MAIL في وحدة التحكم الخاصة بك علاوة على ذلك ، لا تنس إنشاء البريد الإلكتروني. التحقق من الشفرة في موارد مسار التطبيق / طرق العرض / البريد الإلكتروني وإنشاء تفاصيل smtp في ملف .env.

MAIL_DRIVER = smtp
MAIL_HOST = smtp.mailtrap.io
MAIL_PORT = 2525
MAIL_USERNAME = اسم المستخدم
MAIL_PASSWORD = كلمة المرور
[email protected]
MAIL_FROM_NAME = YOURNAME
MAIL_ENCRYPTION = خالية

public function postRegister(Request $request)
    {
        $verification_code = 111111;   // create random number & save it to db ;
        $user = Sentinel::registerAndActivate($request->all());
        return redirect('/');

        $subject = "Please verify your email address.";
        Mail::send('email.verify', ['name' => $user->name, 'verification_code' => $verification_code],
            function ($mail) use ($user, $subject) {
                $mail->from(getenv('FROM_EMAIL_ADDRESS'), "YOUR APPLICATION NAME");
                $mail->to($user->email, $user->name);
                $mail->subject($subject);
            });
    }

هذا هو بريدك الإلكتروني. التحقق من الشفرة:

<!DOCTYPE html>
<html lang="en-US">
<head>
    <meta charset="utf-8">
</head>
<body>

<div>
    Hi {{ $name }},
    <br>
    Thank you for creating an account with us.
    <br>
    Your verification code : <b>{{$verification_code}}</b>
    <br/>
</div>

</body>
</html>
:مؤلف

أسئلة ذات صلة

فوق
قائمة طعام