✅ WEB ja WordPressi uudised, teemad, pistikprogrammid. Siin jagame näpunäiteid ja parimaid veebisaidi lahendusi.

Kasutajate registreerimine ja sisselogimissüsteem Laravelis

21

Laravel pakub sisseehitatud kasutajate registreerimis- ja sisselogimissüsteemi. Enamik arendajaid pole sellest sisseehitatud süsteemist teadlikud (ka mina olin üks neist). Kui sain sellest funktsioonist teada, olin üllatunud. See säästab palju aega sisselogimis- ja registreerimissüsteemi loomisest nullist.

Selles artiklis uurime kasutajate registreerimis- ja sisselogimissüsteemi Laravelis – sisseehitatud funktsiooni, mille pakub Laravel ise.

Nagu me kõik teame, on sisselogimis- ja registreerimisprotsess allpool voolu, mis tavaliselt tuleb integreerida.

  • Kasutaja loob konto
  • Kinnituslink saadetakse kasutaja e-posti aadressile
  • Kui kasutaja on klõpsanud kinnituslingil, aktiveeritakse nad teie süsteemis.
  • Kasutaja logib sisse oma veebisaidile ja pääseb lehtedele juurde

Kõiki ülaltoodud samme käsitleb Laravel. Selle kasutaja loomissüsteemi loomiseks ei pea te koodi kirjutama.

Seda öeldes vaatame kasutaja registreerimis- ja sisselogimissüsteemi In Laravel

Alustamine

Alustamiseks peaksite olema valmis Laraveli projektiga. Kui teil seda pole, looge see käsu käivitamisega:

composer create-project --prefer-dist laravel/laravel laravel-dev

Siin on ‘laravel-dev’ Laraveli projekti nimi. Kasutaja saab seda nime muuta.

Järgmisena peate integreerima Laraveli autentimise. Minge terminali projekti juurkataloogi ja käivitage ükshaaval järgmised käsud:

composer require laravel/ui --dev
php artisan ui vue --auth
npm install && npm run dev

Need käsud loob autentimise kontrollerid nagu LoginController.php, RegisterController.phpjne, mis leiad on app/Http/Controllers/Authkataloog. See loob ka seisukohti login.blade.php, register.blade.phpall resources/view/authkataloogis.

Ülaltoodud käsud loovad ka kataloogi app.blade.phpfaili resources/views/layouts. See vaade on rakenduse aluspaigutus. See kasutab Bootstrap CSS-i raamistikku, kuid kasutaja saab seda kohandada ja kujundust muuta.

Käivitage migreerimiskäsk, mis loob teie andmebaasi kasutajate tabeli.

php artisan migrate

Kui käivitate brauseris Laraveli projekti, näete sisselogimise ja registreerimisvormi linke.

Kasutajate registreerimine ja sisselogimissüsteem Laravelis

Selles etapis saavad kasutajad luua oma konto ja veebisaidile sisse logida. Kuid nagu ma eespool mainisin, oleks kasutaja enne süsteemi pääsemist pidanud oma konto kinnitama.

Järgmises etapis näeme, kuidas teha kasutaja e-posti aadressi kinnitamise protsess.

E-posti aadressi kinnitamine

Registreerimissüsteemi ehitamise ajal saadate kasutajate registreerumisel kasutajatele aktiveerimislingi. Seda aktiveerimislingi kasutatakse kasutajakonto kinnitamiseks. Kui kasutaja klõpsab aktiveerimislingil, siis muudame selle kasutaja aktiivseks. Teisisõnu, pärast konto kinnitamist saab kasutaja sirvida teie rakenduse lehti.

Laravel pakub värskelt registreeritud kasutajale sisseehitatud e-posti aadressi kinnitamise süsteemi. Seda süsteemi kasutades saab registreeritud kasutaja meili aktiveerimislingiga. Konto aktiveerimisel pääseb kasutaja süsteemile juurde.

Avage AppUser.phpfail ja veenduge, et mudel "Kasutaja" täidab IlluminateContractsAuthMustVerifyEmaillepingut.

<?php
 
namespace App;
 
use IlluminateContractsAuthMustVerifyEmail;
use IlluminateFoundationAuthUser as Authenticatable;
use IlluminateNotificationsNotifiable;
 
class User extends Authenticatable implements MustVerifyEmail
{
    ...
    ...
}

Kuidas see töötab? Kui kontrollite migreerimisfaili, sisaldab tabel „Kasutajad" email_verified_atveergu. Seda veergu kasutatakse selleks, et kontrollida, kas kasutaja on oma konto aktiveerinud või mitte. Kui konto on aktiveeritud, peaks sellel veerul olema aktiveerimise kuupäev ja kellaaeg.

Kui käivitate autentimiskäsu, loob see AuthVerificationControllerklassi, millele on kirjutatud loogika kinnituslinkide saatmiseks ja meilide kinnitamiseks. Arendaja saab seda faili kontrollida. Selle kontrolleri jaoks vajalike marsruutide registreerimiseks kirjutage routes/web.phpfaili järgmised marsruudid .

Auth::routes(['verify' => true]);

Kasutaja saab kaitsta oma marsruute, mis peaksid olema sisselogimise taga. Marsruutide kaitsmiseks peate middleware('verified')nendele marsruutidele kandideerima. Pärast seda pääsevad nendele kaitstud marsruutidele juurde ainult kinnitatud kontod.

Te saate marsruudi kaitsmiseks koodi kirjutada järgmiselt:

Route::get('profile', function() {
    return '<h1>This is profile page</h1>';
})->middleware('verified');

Kui soovite kontrollida, kuhu kasutaja pärast kinnitamist suunata, avage AuthVerificationControllerfail. Failil on muutuja, $redirectTomida kasutatakse ümbersuunamiseks. Muutke seda marsruuti vastavalt oma nõuetele.

protected $redirectTo = '/home';

Kasutaja sisselogimine ja registreerimine

Nüüd olete valmis kasutaja sisselogimis- ja registreerimissüsteemi testima. Kuna tegeleme registreerumisprotsessiga, peaks teie süsteem olema võimeline meili saatma. E-kirjade saatmiseks saate kasutada Gmaili SMTP-serverit. Lisateabe saamiseks lugege meie artiklit E-posti saatmine Gmaili SMTP-serveri kaudu Laravelis.

Käivitage kohalik arendusserver käsuga:

php artisan serve

Loo kasutaja konto siin registreerimislehel – http: // localhost: 8000 / register

Kasutajate registreerimine ja sisselogimissüsteem Laravelis

Vormi esitamisel saate oma e-posti aadressile kinnituslingi järgmiselt:

Kasutajate registreerimine ja sisselogimissüsteem Laravelis

Pange tähele, et Laravel võimaldab teil oma kontole sisse logida, isegi kui te pole veel kontot kinnitanud. Kuid te ei pääse kaitstud marsruudile juurde.

Olen marsruudi jaoks lisanud vahevara profile. Konto kinnitamata, kui proovite külastada lehte http: // localhost: 8000 / profile, suunatakse see ümber aadressile http: // localhost: 8000 / email / verify URL.

Kasutajate registreerimine ja sisselogimissüsteem Laravelis

Kinnitage oma konto. Kontrollige andmebaasi "kasutajate" tabelit ja näete, et email_verified_atveerg täidab aktiveerimise kuupäeva ja kellaaja. See tähendab, et olete oma konto edukalt kinnitanud. Nüüd peaksite pääsema kaitstud marsruutidele.

Loodan, et saate aru, kuidas kasutada Laraveli kasutaja registreerimise ja sisselogimise süsteemi. Palun jagage oma mõtteid ja ettepanekuid allolevas kommentaaris.

seotud artiklid

See veebisait kasutab teie kasutuskogemuse parandamiseks küpsiseid. Eeldame, et olete sellega rahul, kuid saate soovi korral loobuda. Nõustu Loe rohkem