Laravel 7 "Адрес в указанном почтовом ящике не соответствует RF C 2822, 3.6.2." - PullRequest
0 голосов
/ 20 марта 2020

Я купил курс на udemy!

Я начал активировать электронную почту, то есть, когда пользователь регистрируется, чтобы активировать свою учетную запись через адрес электронной почты.

Однако, когда я пытаюсь создать учетную запись, я получаю сообщение об ошибке!

"Адрес в указанном почтовом ящике не соответствует RF C 2822, 3.6 .2. "

AccountController. php

<?php

namespace App\Http\Controllers;

use Illuminate\Support\Facades\Validator;
use Illuminate\Support\Facades\Redirect;
use Illuminate\Http\Request;
use Illuminate\Support\Str;
use App\User;
use Hash;
use Mail;
use URL;

class AccountController extends Controller
{
    public function getcreate(){
        return view('account.create');
    }

    public function postcreate(Request $request){
        $validator = Validator::make(request()->all(), 
        array(
            'email'       =>    'required|max:50|email|unique:users',
            'username'    =>    'required|max:20|min:3|unique:users',
            'password'    =>    'required|min:6',
            'repeat_pass' =>    'required|same:password'   
        ));

        if($validator->fails()){
            return Redirect::route('account-create')
                    ->withErrors($validator)
                    ->withInput();
        }
        else{
            $username  = $request->input('email');
            $email     = $request->input('username');
            $password  = $request->input('password');

            $code      = Str::random(60);

            $user      = User::create(array(
                'email'    => $email,
                'username' => $username,
                'password' => \Hash::make($password),
                'code'     => $code,
                'active'   => 0
            ));

            if($user){

                Mail::send('emails.auth.activate',array('link' => URL::route('account-activate', $code),'username' => $username), function($message) use($user) {
                    $message->to($user->email, $user->username)->subject('Activate your account');
                });


                return Redirect::route('home')
                       ->with('global','Email activation');
            }
        }
    }

    public function getActivate($code){
        //return $code;
    }


}

mail. php

transport => 'smtp',
host => 'smtp.gmail.com',
port => 465,
encryption => 'ssl',

1 Ответ

1 голос
/ 20 марта 2020

У вас есть

$username = $request->input('email');
$email = $request->input('username');

Я подозреваю, что им нужно обменяться

$email = $request->input('email');
$username = $request->input('username');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...