Înregistrarea utilizatorilor stângaci php. Crearea unui sistem simplu de înregistrare a utilizatorilor în PHP și MySQL. Acum să creăm scripturile principale pentru lucrări ulterioare

Foarte des, începătorii se confruntă cu problema scrierii înregistrării pe site-ul lor. În acest articol vă voi spune cum să o faceți.
Voi descrie totul pas cu pas.

Pasul 1. Conectați-vă la baza de date MySQL.
Să creăm fișierul db_connect.php:

Mysql_connect ("localhost", "utilizator", "parola utilizator") sau die ("Eroare la conectare la MySQL!");
mysql_select_db(„bază de date”) sau die(„Eroare de conectare la baza de date MySQL!”);
mysql_set_charset("utf8"); // setează codificarea bazei de date

Pasul 2. Creați un tabel pentru utilizatori.

CREATE TABLE `users_profiles` (
`user_id` int(11) NOT NULL AUTO_INCREMENT,
`nume utilizator` varchar(32) NOT NULL,
`parolă` varchar(32) NOT NULL,
CHEIE PRIMARĂ (`user_id`)
) MOTOR=MyISAM DEFAULT CHARSET=utf8;

Pasul 3. Creați un fișier handler.php - acest fișier va conține o verificare pentru autorizarea utilizatorului.

Pasul 4. Scrieți înregistrarea.
Pentru a face acest lucru, creați un fișier register.php și scrieți următorul cod în el:

Pasul 6. Ieșire utilizator.
Fiecare utilizator trebuie să părăsească site-ul dacă dorește. Pentru a face acest lucru, creați un fișier exit.php

Pasul 7. Creați pagina de start site-ul.
Să creăm ultimul fișier - index.php

Pentru a configura, creați un fișier .htaccess și introduceți următoarele în el:

php_value register_globals 0
php_value magic_quotes_gpc 0

Php_value zlib.output_compression 1

AddDefaultCharset UTF-8

Pentru cei cărora le este prea lene să facă toate acestea, descărcați

Procesul de creare a unui sistem de înregistrare presupune destul de multă muncă. Trebuie să scrieți un cod care verifică de două ori validitatea adreselor de e-mail, trimite e-mailuri de confirmare, oferă posibilitatea de a recupera parolele, stochează parolele într-un loc sigur, validează formularele de introducere și multe altele. Chiar și atunci când faceți toate acestea, utilizatorii vor fi reticenți să se înregistreze, deoarece chiar și cea mai minimă înregistrare necesită activitatea lor.

În tutorialul de astăzi, vom dezvolta un sistem simplu de înregistrare care nu va necesita parole! Rezultatele vor fi un sistem care poate fi ușor modificat sau integrat într-un site web PHP existent. Dacă ești interesat, continuă să citești.

PHP

Acum suntem gata să începem cu codul PHP. Funcționalitatea principală a sistemului de înregistrare este asigurată de clasa User, pe care o puteți vedea mai jos. Clasa folosește (), care este o bibliotecă de baze de date minimalistă. Clasa User este responsabilă pentru accesarea bazelor de date, generarea de jetoane de autentificare și validarea acestora. Ne prezintă o interfață simplă care poate fi încorporată cu ușurință în sistemul de înregistrare al site-urilor dumneavoastră bazate pe PHP.

User.class.php

// Instanță ORM privată
privat $orm;

/**
* Găsiți un utilizator după un șir de simbol. Sunt luate numai jetoane valide
* considerație. Un token este valabil timp de 10 minute după ce a fost generat.
* @param șir $token Jetonul de căutat
* @return Utilizator
*/

Funcția publică statică findByToken($token)(

// găsiți-l în baza de date și asigurați-vă că marcajul de timp este corect


->unde(„token”, $token)
->where_raw("validitate_token > ACUM()")
->găsește_unul();

Dacă(!$rezultat)(
returnează fals;
}

Returnează utilizator nou ($rezultat);
}

/**
* Fie autentificați-vă, fie înregistrați un utilizator.
* @return Utilizator
*/

Funcție publică statică loginOrRegister($email)(

// Dacă un astfel de utilizator există deja, returnați-l

Dacă(Utilizator::există($email))(
returnează utilizator nou ($email);
}

// În caz contrar, creați-l și returnați-l

Return User::create($email);
}

/**
* Creați un utilizator nou și salvați-l în baza de date
* @param string $email Adresa de e-mail a utilizatorului
* @return Utilizator
*/

Creare funcție statică privată ($email)(

// Scrieți un utilizator nou în baza de date și returnați-l

$rezultat = ORM::for_table("reg_users")->create();
$rezultat->email = $email;
$rezultat->salvare();

Returnează utilizator nou ($rezultat);
}

/**
* Verificați dacă un astfel de utilizator există în baza de date și returnați un boolean.
* @param string $email Adresa de e-mail a utilizatorului
* @return boolean
*/

Funcția publică statică există ($email)(

// Există utilizatorul în baza de date?
$rezultat = ORM::for_table("reg_users")
->unde(„e-mail”, $e-mail)
->count();

Returnează $rezultat == 1;
}

/**
* Creați un nou obiect utilizator
* @param $param instanță ORM, id, e-mail sau null
* @return Utilizator
*/

Funcția publică __construct($param = null)(

Dacă($param instanță de ORM)(

// A fost trecută o instanță ORM
$this->orm = $param;
}
else if(este_șir($param))(

// A fost trimis un e-mail
$acest->
->unde(„e-mail”, $param)
->găsește_unul();
}
altfel(

Dacă(este_numeric($param))(
// Un ID de utilizator a fost transmis ca parametru
$id = $param;
}
else if(isset($_SESSION["loginid"]))(

// Nu a fost transmis niciun ID de utilizator, priviți sesiune
$id = $_SESSION["loginid"];
}

$this->orm = ORM::for_table("reg_users")
->unde(„id”, $id)
->găsește_unul();
}

/**
* Generează un nou token de autentificare SHA1, îl scrie în baza de date și îl returnează.
* @return șir
*/

Funcția publică generateToken())(
// generează un token pentru utilizator autentificat. Salvați-l în baza de date.

$token = sha1($this->email.time().rand(0, 1000000));

// Salvați jetonul în baza de date,
// și marcați-l ca fiind valabil doar pentru următoarele 10 minute

$this->orm->set("token", $token);
$this->orm->set_expr("validitate_token", "ADDTIME(ACUM(),"0:10")");
$this->orm->save();

Returnează $token;
}

/**
*Conectează-te la acest utilizator
* @return nul
*/

Autentificare în funcție publică()

// Marcați utilizatorul ca autentificat
$_SESSION["loginid"] = $this->orm->id;

// Actualizați câmpul last_login db
$this->orm->set_expr("ultima_login", "ACUM()");
$this->orm->save();
}

/**
* Distrugeți sesiunea și deconectați utilizatorul.
* @return nul
*/

Deconectare funcție publică()
$_SESSION = matrice();
unset($_SESSION);
}

/**
* Verificați dacă utilizatorul este autentificat.
* @return boolean
*/

Funcție publică loggedIn())(
return isset($this->orm->id) && $_SESSION["loginid"] == $this->orm->id;
}

/**
* Verificați dacă utilizatorul este administrator
* @return boolean
*/

Funcția publică este Admin())(
returnează $this->rank() == „administrator”;
}

/**
* Găsiți tipul de utilizator. Poate fi fie admin, fie obișnuit.
* @return șir
*/

Rangul funcției publice())(
if($this->orm->rank == 1)(
returnează „administrator”;
}

Reveniți „obișnuit”;
}

/**
* Metodă magică pentru accesarea elementelor private
* $orm instanță ca proprietăți ale obiectului utilizator
* @param șir $key Numele proprietății accesate
* @return mixt
*/

Funcția publică __get($key)(
if(isset($this->orm->$key))(
returnează $this->orm->$key;
}

Returnează nul;
}
}
Tokenurile sunt generate folosind un algoritm și stocate într-o bază de date. Folosim MySQL pentru a seta coloana token_validity la 10 minute. Când validăm un token, îi spunem motorului că avem nevoie de un token, câmpul token_validity nu a expirat încă. Astfel limităm timpul în care tokenul va fi valabil.

Observați că folosim metoda magică __get() la sfârșitul documentului pentru a accesa proprietățile obiectului utilizator. Acest lucru ne permite să accesăm datele care sunt stocate în baza de date ca proprietăți: $user->email, $user->token. Ca exemplu, să vedem cum putem folosi această clasă în următorul fragment de cod:


Un alt fișier care stochează funcționalitatea necesară este functions.php. Acolo avem câteva funcții de ajutor care ne permit să păstrăm restul codului mai ordonat.

Funcții.php

Funcția send_email($from, $to, $subject, $message)(

// Funcție de ajutor pentru trimiterea e-mailului

$headers = "Versiune MIME: 1.0" . „\r\n”;
$headers .= "Tip de conținut: text/plain; charset=utf-8" . „\r\n”;
$headers .= "De la: ".$de la . „\r\n”;

Returnează e-mail($către, $subiect, $mesaj, $anteturi);
}

funcția get_page_url())(

// Aflați adresa URL a unui fișier PHP

$url = "http".(empty($_SERVER["HTTPS"])?"":"s")."://".$_SERVER["SERVER_NAME"];

If(isset($_SERVER["REQUEST_URI"]) && $_SERVER["REQUEST_URI"] != "")(
$url.= $_SERVER[„CERERE_URI”];
}
altfel(
$url.= $_SERVER[„CALEA_INFO”];
}

Returnează $url;
}

funcția rate_limit($ip, $limit_hour = 20, $limit_10_min = 10)(

// Numărul de încercări de conectare pentru ultima oră de către această adresă IP

$count_hour = ORM::for_table("reg_login_tempt")
->
->where_raw("ts > SUBTIME(ACUM(),"1:00")")
->count();

// Numărul de încercări de conectare din ultimele 10 minute de către această adresă IP

$count_10_min = ORM::for_table("reg_login_tempt")
->unde ("ip", sprintf ("%u", ip2long($ip)))
->where_raw("ts > SUBTIME(ACUM(),"0:10")")
->count();

Dacă($count_hour > $limit_hour || $count_10_min > $limit_10_min)(
throw new Exception ("Prea multe încercări de conectare!");
}
}

funcția rate_limit_tick($ip, $email)(

// Creați o înregistrare nouă în tabelul de încercări de conectare

$login_tempt = ORM::for_table("reg_login_tempt")->create();

$login_attempt->email = $email;
$login_tempt->ip = sprintf("%u", ip2long($ip));

$încercare_login->salvare();
}

redirecționare funcție($url)(
header("Locație: $url");
Ieșire;
}
Funcțiile rate_limit și rate_limit_tick ne permit să limităm numărul de încercări de autorizare pentru o anumită perioadă de timp. Încercările de autorizare sunt înregistrate în baza de date reg_login_attempt. Aceste funcții sunt declanșate atunci când formularul de conectare este verificat, după cum puteți vedea în următorul fragment de cod.

Codul de mai jos a fost preluat de pe index.php și este responsabil pentru validarea formularului de autentificare. Returnează un răspuns JSON care este condus de codul jQuery pe care l-am văzut în assets/js/script.js.

index.php

If(!empty($_POST) && isset($_SERVER["HTTP_X_REQUESTED_WITH"]))(

// Afișează un antet JSON

Antet ("Content-type: application/json");

// Adresa de e-mail este validă?

If(!isset($_POST["email"]) || !filter_var($_POST["email"], FILTER_VALIDATE_EMAIL))(
throw new Exception(„Vă rugăm să introduceți un e-mail valid.”);
}

// Aceasta va arunca o excepție dacă persoana este deasupra
// limitele permise de încercare de conectare (consultați functions.php pentru mai multe):
rate_limit($_SERVER["REMOTE_ADDR"]);

// Înregistrați această încercare de conectare
rate_limit_tick($_SERVER["REMOTE_ADDR"], $_POST["e-mail"]);

// Trimite mesajul utilizatorului

$mesaj = "";
$email = $_POST["e-mail"];
$subject = "Linkul dvs. de conectare";

Dacă(!Utilizatorul::există($email))(
$subject = „Vă mulțumim pentru înregistrare!”;
$message = "Vă mulțumim pentru înregistrarea pe site-ul nostru!\n\n";
}

// Încercați să vă autentificați sau să înregistrați persoana
$user = Utilizator::loginOrRegister($_POST["e-mail"]);

$message.= „Puteți să vă autentificați de la această adresă URL:\n”;
$message.= get_page_url()."?tkn=".$user->generateToken()."\n\n";

$message.= "Legătura va expira automat după 10 minute.";

$rezultat = send_email($fromEmail, $_POST["email"], $subject, $message);

Dacă(!$rezultat)(
throw new Exception(„A apărut o eroare la trimiterea e-mailului. Vă rugăm să încercați din nou.”);
}

Die(json_encode(array(
"message" => "Vă mulțumim! Am trimis un link către căsuța dvs. de e-mail. Verificați-vă și folderul de spam.”
)));
}
}
catch(Excepție $e)(

Die(json_encode(array(
"eroare" => 1,
„message” => $e->getMessage()
)));
}
După autorizarea sau înregistrarea cu succes, codul de mai sus trimite un e-mail persoanei cu un link pentru autorizare. Tokenul este disponibil ca o variabilă $_GET „tkn” datorită adresei URL generate.

index.php

If(isset($_GET["tkn"]))(

// Este acesta un simbol de conectare valid?
$user = Utilizator::findByToken($_GET["tkn"]);

// Da! Conectați-vă utilizatorul și redirecționați către pagina protejată.

$user->login();
redirect("protected.php");
}

// Token nevalid. Redirecționați înapoi la formularul de conectare.
redirect("index.php");
}
Rularea $user->login() va crea variabilele de sesiune necesare, permițând utilizatorului să rămână conectat la autentificarea ulterioară.

Deconectarea din sistem este implementată aproximativ în același mod:

Index.php

If(isset($_GET["deconectare"]))(

$user = utilizator nou();

Dacă($user->loggedIn())(
$user->logout();
}

Redirect("index.php");
}
La sfârșitul codului, redirecționăm utilizatorul către index.php din nou, astfel încât parametrul ?logout=1 din URL este eliminat.

Fișierul nostru index.php va avea nevoie și de protecție - nu dorim ca utilizatorii deja autentificați să vadă formularul. Pentru a face acest lucru, folosim metoda $user->loggedIn():

Index.php

$user = utilizator nou();

if($user->loggedIn())(
redirect("protected.php");
}
În cele din urmă, să vedem cum vă puteți proteja pagina site-ului web și să o faceți accesibilă numai după autorizare:

protejat.php

// Pentru a proteja orice pagină php de pe site-ul dvs., includeți main.php
// și creează un nou obiect User. Este atât de simplu!

require_once "includes/main.php";

$utilizator = utilizator nou();

if(!$user->loggedIn())(
redirect("index.php");
}
După această verificare, puteți fi sigur că utilizatorul s-a conectat cu succes. De asemenea, veți avea acces la datele care sunt stocate în baza de date ca proprietăți ale obiectului $user. Pentru a afișa e-mailul utilizatorului și rangul acestuia, utilizați următorul cod:

Echo „E-mailul tău: „.$user->email;
echo "Rangul dvs.: ".$user->rank();
Aici rank() este metoda deoarece coloana de rang din baza de date conține de obicei numere (0 pentru utilizatorii normali și 1 pentru administratori) și trebuie să le convertim pe toate în nume de rang, care este implementat folosind această metodă. Pentru a converti un utilizator standard într-un administrator, pur și simplu editați intrarea utilizatorului în phpmyadmin (sau orice alt program de bază de date). În calitate de administrator, utilizatorul nu va avea niciun drept caracteristici speciale. Dumneavoastră aveți dreptul de a alege ce drepturi să acordați administratorilor.

Gata!

Cu aceasta, sistemul nostru simplu de înregistrare este gata! Îl puteți utiliza pe un site PHP existent sau îl puteți moderniza pentru a se potrivi propriilor cerințe.

Multe dintre site-uri web au un formular de înregistrare pentru ca utilizatorii dvs. să se înscrie și, astfel, pot beneficia de un fel de privilegii în cadrul site-ului. În acest articol vom vedea cum să creați un formular de înregistrare în PHP și MySQL.

Vom folosi etichete simple și, de asemenea, vom folosi eticheta table pentru a proiecta pagina web Sign-Up.html. Să începem:

Lista 1: sign-up.html

Formular de înregistrare pentru înscriere

Nume
E-mail
Nume de utilizator
Parolă
Confirmați parola


Figura 1:

Descrierea paginii web sing-in.html:

După cum puteți vedea în Figura 1, există un formular de înregistrare și solicită puține date despre utilizator. Acestea sunt datele comune pe care orice site le solicită utilizatorilor sau vizitatorilor săi să creeze un ID și o parolă. Am folosit eticheta tabel pentru că pentru a afișa câmpurile formularului de pe pagina web într-un formular de aranjare, așa cum le puteți vedea în Figura 1. Pare atât de simplu, deoarece încă nu am folosit stilul CSS pe el, acum haideți să folosim stiluri CSS și să legăm Fișier în stil CSS cu pagina web sing-up.html.

Lista 2: style.css

/*Fișier CSS pentru pagina web de înscriere*/ #body-color( background-color:#6699CC; ) #Sign-Up( background-image:url("sign-up.png"); background-size:500px 500px ; background-repeat:no-repeat; margin-bottom:150px margin-left:10px; width:40px; font-weight:bold; dimensiunea fontului:20px;

Lista 3: Conectați style.css cu pagina web sign-up.html



Figura 2:

Descrierea fișierului style.css:

În fișierul CSS extern am folosit câteva stiluri care ar putea arăta noi pentru tine. Cum am folosit o imagine în fundal și am pus-o în centrul paginii web. Care a devenit ușor de utilizat cu ajutorul etichetei html div. Deoarece am folosit trei ID-uri de etichete div. #button, #sing-up și #body-color și le-am aplicat toate stilurile CSS și acum puteți vedea Figura 2, cât de frumos și atractiv arată. Puteți utiliza multe alte stiluri CSS, cum ar fi stilurile CSS 2D și 3D pe el. Va arata mai frumos decat pare acum.

După toate aceste lucrări simple, acum vom crea o bază de date și un tabel pentru a stoca toate datele în baza de date a noilor utilizatori. Înainte de a crea un tabel, ar trebui să știm ce cerem de la utilizator. Pe măsură ce am conceput formularul, vom crea tabelul conform formularului de înregistrare, pe care îl puteți vedea în Figura 1 și 2.

Lista 3: Interogare pentru tabel în MySQL

CREATE TABLE WebsiteUsers (userID int(9) NOT NULL auto_increment, fullname VARCHAR(50) NOT NULL, userName VARCHAR(40) NOT NULL, email VARCHAR(40) NOT NULL, trece VARCHAR(40) NOT NULL, PRIMARY KEY(userID) );

Descrierea listei 3:

Un lucru ar trebui să știți că, dacă nu aveți facilitate MySQL pentru a utiliza această interogare, ar trebui să urmați articolul meu anterior despre . din acest link veți putea înțelege instalarea și cerințele. Și cum îl putem folosi.

În interogarea listare 3 am folosit toate acele lucruri de care avem nevoie pentru formularul de înregistrare. Deoarece există variabile de e-mail, nume complet, parolă și nume de utilizator. Aceste variabile vor stoca datele utilizatorului, pe care el/ea le va introduce în formularul de înregistrare din Figura 2 pentru înscriere.

După toate aceste lucrări, vom lucra cu programarea PHP, care este un limbaj de programare pe partea de server. De aceea trebuie să creați o conexiune cu baza de date.

Lista 4: Conexiune la baza de date

Descrierea listei 4:

Am creat o conexiune între baza de date și paginile noastre web. Dar dacă nu știți dacă funcționează sau nu, atunci mai folosiți un lucru în ultima lista de verificare 5 pentru el.

Lista 5: verificarea conexiunii conectivității bazei de date

Lista de descriere 5:

În Lista 5 am încercat doar să vă arăt că puteți verifica și confirma conexiunea dintre baza de date și PHP. Și încă un lucru, nu vom folosi codul Listing 5 în pagina noastră web de inscriere. Pentru că este doar pentru a vă face să înțelegeți cum puteți verifica conexiunea MySQL.

Acum vom scrie o aplicație de programare PHP pentru a verifica mai întâi disponibilitatea utilizatorului și apoi a stoca utilizatorul dacă acesta este un utilizator nou pe pagina web.

Lista 6: connectivity-sign-up.php

Descrierea connectivity-sign-up.php

În această aplicație PHP am folosit cel mai simplu mod de a crea o aplicație de înscriere pentru paginile web. După cum puteți vedea, mai întâi creăm o conexiune ca lista 4. Și apoi am folosit două funcții, prima funcție este SignUP(), care este apelată de instrucțiunea if din ultima aplicație, unde prima confirmă apăsarea butonului de înregistrare. buton. Dacă este apăsat, va apela funcția SingUp și această funcție va folosi o interogare de SELECT pentru a prelua datele și a le compara cu userName și e-mailul introdus în prezent de la utilizator. Dacă numele de utilizator și adresa de e-mail sunt deja prezente în baza de date, se va spune scuze, sunteți deja înregistrat

Dacă utilizatorul este nou, deoarece numele său de utilizator actual și ID-ul de e-mail nu sunt prezente în baza de date, astfel încât instrucțiunea If va apela NewUser() unde va stoca toate informațiile noului utilizator. Și utilizatorul va deveni parte a paginii web.



Figura 3

În figura 3, utilizatorul introduce date pentru a se înscrie dacă utilizatorul este un utilizator vechi al acestei pagini web conform înregistrărilor bazei de date. Astfel, pagina web va afișa un mesaj că utilizatorul este deja înregistrat dacă utilizatorul este nou, astfel încât pagina web va afișa un mesaj că înregistrarea utilizatorului este finalizată.



Figura 4:

Pe măsură ce am introdus date în formularul de înregistrare (Figura 4), conform bazei de date, numele de utilizator și e-mailul pe care l-am introdus în formularul de înregistrare pentru înregistrare, este deja prezent în baza de date. Așa că ar trebui să încercăm un nou nume de utilizator și o adresă de e-mail pentru a vă înscrie cu un nou ID și o nouă parolă.



Figura 5

În figura 5, ne confirmă ce nume de utilizator și ID-ul de e-mail a introdus utilizatorul. Ambele nu sunt prezente în înregistrările bazei de date. Așadar, acum este creat un nou ID și o parolă, iar utilizatorul poate să-și folosească noul ID și parola pentru a se autentifica data viitoare.

Concluzie:

În acest articol am învățat cel mai simplu mod de a crea o pagină web de înscriere. De asemenea, am învățat cum se ocupă cu baza de date dacă folosim PHP și MySQL. Am încercat să vă ofer cunoștințe de bază despre funcționalitatea de înscriere a paginii web. Cum funcționează la partea din spate și cum îi putem schimba aspectul pe partea din față. Pentru orice întrebare nu ezitați și comentați.

Laravel cere Composer să gestioneze dependențele proiectului. Deci, înainte de a instala Laravel, asigurați-vă că aveți Composer instalat pe sistemul dvs. În cazul în care auziți despre Composer pentru prima dată, este un instrument de gestionare a dependențelor pentru php similar cu npm-ul nodului.

Pentru a instala Composer pe computer, verificați această postare:

Instalarea Laravel pe Windows:

Urmați pașii de mai jos pentru a instala laravel pe mașina Windows. Indiferent dacă aveți stiva xampp/wamp, funcționează pentru ambele. Pe WAMP, asigurați-vă că instalați laravel în folderul „www” și pe XAMPP, evident „htdocs”.

PASUL-1) Deschideți folderul „htdocs” pe XAMPP, țineți apăsată tasta SHIFT și faceți clic dreapta pe folder și alegeți „deschideți fereastra de comandă aici”. Alternativ, puteți deschide fereastra de comandă și puteți schimba directorul în „xampp/htdocs”.

PASUL-2) Introduceți următoarea comandă.

Composer create-project laravel/laravel my_laravel_site --prefer-dist

Aici „my_laravel_site” este numele folderului în care vor fi instalate fișierele laravel. Schimbați asta după bunul plac.

PASUL-3) Acum este timpul să aveți răbdare, deoarece instalarea laravel va dura ceva timp.

PASUL-4) Odată instalat, schimbați directorul la „my_laravel_site” (cd „my_laravel_site”) în promptul de comandă și introduceți comanda de mai jos.

Serviciu Php artizanal

PASUL-5) Acesta va afișa un mesaj de genul „Serverul de dezvoltare Laravel a pornit:” împreună cu o adresă URL.

PASUL-6) Copiați și lipiți adresa URL în browser. Dacă lucrurile merg bine, veți vedea ecranul de bun venit laravel.

PASUL-7) Gata! Ați instalat cu succes Laravel pe mașina Windows și gata de lucru.

Setarea cheii aplicației:

Laravel necesită puțină configurare după instalare. Este necesar să setați cheia aplicației. Acesta este un șir aleatoriu de 32 de caractere folosit pentru criptarea sesiunii și a altor date sensibile. De obicei, acest lucru va fi setat automat atunci când instalați laravel prin intermediul compozitorului sau al programului de instalare laravel.

În cazul în care nu este setat, trebuie să o faceți manual. Mai întâi asigurați-vă că redenumiți fișierul „.env.example” în „.env” de pe rădăcina aplicației. Apoi deschideți promptul de comandă și treceți la folderul proiectului laravel. Acum rulați comanda de mai jos pentru a genera cheia.

Php artisan key:generate

Copiați această cheie generată în variabila APP_KEY din fișierul „.env”. Salvează și ai terminat.

Instalarea unei versiuni specifice Laravel:

Metoda de mai sus va face compozitorul să descarce și să instaleze cea mai recentă versiune de laravel. Dacă doriți să instalați versiuni anterioare de laravel pe mașina dvs., asigurați-vă că includeți numărul versiunii respective în comanda create-project.

Composer create-project laravel/laravel=5.4 your-project-name --prefer-dist Citiți și:

La fel poți instalați cu ușurință laravel folosind compozitor pe Windows. Sper că veți găsi acest tutorial util. Vă rugăm să o distribuiți pe cercul dvs. de socializare dacă vă place.

O zi buna, prieteni! Să ne uităm la înregistrarea utilizatorilor în PHP. Mai întâi, să definim condițiile pentru înregistrarea utilizatorului nostru:

  • Parola este criptată folosind algoritmul MD5
  • Vom sare parola
  • Se verifică dacă autentificarea este ocupată
  • Activarea utilizatorului prin scrisoare.
  • Înregistrarea și stocarea datelor în SGBD-ul MySQL

Pentru a scrie acest script, trebuie să înțelegem ce este înregistrarea utilizatorului. Înregistrarea utilizatorilor înseamnă obținerea de date reale de utilizator, prelucrarea și stocarea datelor.

Dacă explicați în cuvinte simple atunci înregistrarea înseamnă doar înregistrarea și stocarea anumitor date prin care putem autoriza utilizatorul în cazul nostru - acesta este Login și Password.

Autorizarea este acordarea de drepturi unei anumite persoane sau unui grup de persoane pentru a efectua anumite acțiuni, precum și procesul de verificare a acestor drepturi atunci când se încearcă efectuarea acestor acțiuni. Mai simplu spus, cu ajutorul autorizației, putem limita accesul la anumite conținuturi de pe site-ul nostru.

Să ne uităm la structura directoarelor de script pentru implementarea înregistrării noastre cu autorizare. Trebuie să împărțim scripturile în componente logice. Am plasat modulele de înregistrare și autorizare într-un director separat. De asemenea, vom plasa conexiunea la baza de date MySQL, un fișier cu funcții utilizator, un fișier de stil CSS și șablonul nostru HTML în directoare separate. Această structură vă permite să navigați rapid prin scripturi. Imaginați-vă că aveți un site web mare, cu o grămadă de module etc. iar dacă nu există ordine, va fi foarte greu să găsești ceva într-o asemenea mizerie.

Deoarece vom stoca toate datele în SGBD-ul MySQL, să creăm un mic tabel în care vom stoca datele de înregistrare.

Mai întâi trebuie să creați un tabel în baza de date. Să numim tabelul bez_reg unde bez este prefixul tabelului și reg este numele tabelului.

Structura tabelului: bez_reg -- -- Structura tabelului `bez_reg` -- CREATE TABLE IF NU EXISTE `bez_reg` (`id` int(11) NOT NULL AUTO_INCREMENT, `login` varchar(200) NOT NULL, `pass` varchar( 32) NOT NULL, `salt` varchar(32) NOT NULL, `active_hex` varchar(32) NOT NULL, `status` int(1) NOT NULL, CHEIE PRIMARĂ (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; Acum să creăm scripturile principale pentru lucrări ulterioare.

Fișierul INDEX.PHP

Fișierul CONFIG.PHP