✅ WEB- ja WordPress -uutiset, -teemat, -laajennukset. Täällä jaamme vinkkejä ja parhaita verkkosivustoratkaisuja.

Kuinka lähettää aktivointisähköposti Laravelissa käyttäjän rekisteröinnin jälkeen

14

Laravel mukana tulee todennusvirta, kun asennamme sen. Se sisältää kirjautumisen, rekisteröinnin, unohtanut salasanavirran itse Laravel-ytimessä. Käyttämällä tätä sisäänrakennettua kulkua käyttäjärekisteröityessään he pääsevät suoraan järjestelmään. Mutta entä jos joku haluaa lähettää vahvistuskoodin sähköpostitse ennen kuin antaa käyttäjän käyttää sovellusta. Tässä artikkelissa tutkitaan aktivointisähköpostin lähettämistä Laravelissa.

Lähetämme vahvistusviestin käyttäjälle. Kun käyttäjä napsauttaa sähköpostitse lähetettyä vahvistuslinkkiä, vain hän voi käyttää järjestelmää.

Päästä alkuun

Aloittamiseksi asennamme paketin ensin Laravel-projektiimme. Avaa pääte projektin juurihakemistossa ja suorita komento:

composer require beyondcode/laravel-confirm-email

Tämä paketti, joka lisää sähköpostivahvistuksen Laravel-projekteihisi.

Paketin asentamisen jälkeen meidän pitäisi suorittaa komento julkaisemaan siirto ja määritystiedosto.

php artisan vendor:publish --provider=BeyondCodeEmailConfirmationEmailConfirmationServiceProvider

Vuonna userstaulukossa, tämä paketti lisätä kaksi saraketta confirmed_atja confirmation_code. Suoritetaan siirtokomento näiden sarakkeiden lisäämiseksi.

php artisan migrate

Kokoonpano

Lähettämään aktivointi sähköposti meidän on korvattava AuthenticatesUsers, RegistersUsersja SendsPasswordResetEmailspiirteitä, joilla ne antanut tämä paketti.

Avaa ensin alla olevat tiedostot editorissasi, sitten vaihdamme piirteet yksi kerrallaan.

  • appHttpControllersAuthLoginController.php
  • appHttpControllersAuthRegisterController.php
  • appHttpControllersAuthForgotPasswordController.php

Korvaa lauseet yllä olevista tiedostoista

  • use IlluminateFoundationAuthAuthenticatesUsers;
  • use IlluminateFoundationAuthRegistersUsers;
  • use IlluminateFoundationAuthSendsPasswordResetEmails;

Kanssa

  • use BeyondCodeEmailConfirmationTraitsAuthenticatesUsers;
  • use BeyondCodeEmailConfirmationTraitsRegistersUsers;
  • use BeyondCodeEmailConfirmationTraitsSendsPasswordResetEmails;

Kun lähetämme vahvistuslinkkiä aktivointisähköpostissa, lisää seuraavat kaksi reittiä routes/web.phptiedostoon.

Route::name('auth.resend_confirmation')->get('/register/confirm/resend', 'AuthRegisterController@resendConfirmation');
Route::name('auth.confirm')->get('/register/confirm/{confirmation_code}', 'AuthRegisterController@confirm');

Kun käyttäjä napsauttaa vahvistuslinkkiä, tämä paketti lisää flash-viestejä, jotka sisältävät virhe- / tietoviestin käyttäjille. Jos haluat näyttää tämän flash-viestin käyttäjille, lisää koodi alla olevaan koodiin resourcesviewsauthlogin.blade.php.

.....
<div class="panel-body">
    @if (session('confirmation'))
        <div class="alert alert-info" role="alert">
            {!! session('confirmation') !!}
        </div>
    @endif
 
    @if ($errors->has('confirmation') > 0)         <div class="alert alert-danger" role="alert">
            {!! $errors->first('confirmation') !!}
        </div>
    @endif
.....

Meidän on myös lisättävä koodi alle resourcesviewsauthpasswordsemail.blade.php

.....
<div class="panel-body">
    @if ($errors->has('confirmation') > 0)         <div class="alert alert-danger" role="alert">
            {!! $errors->first('confirmation') !!}
        </div>
    @endif
.....

Se siitä! Nyt kun käyttäjä tekee rekisteröinnin verkkosivustollesi, hän saa aktivointisähköpostin vahvistaakseen tilinsä. Jaa ajatuksesi alla olevassa kommenttiosassa.

Aiheeseen liittyvät artikkelit

Tämä verkkosivusto käyttää evästeitä parantaakseen käyttökokemustasi. Oletamme, että olet kunnossa, mutta voit halutessasi kieltäytyä. Hyväksyä Lisätietoja