Kako se registrirati u php html mysql. Izrada jednostavnog sustava registracije korisnika u PHP-u i MySQL-u
Zdravo! Sada ćemo pokušati implementirati najviše jednostavna registracija na web stranici sa koristeći PHP+ MySQL. Da biste to učinili, Apache mora biti instaliran na vašem računalu. Princip rada naše skripte prikazan je u nastavku.
1. Započnimo stvaranjem tablice korisnika u bazi podataka. Sadržat će korisničke podatke (prijavu i lozinku). Idemo na phpmyadmin (ako kreirate bazu podataka na računalu http://localhost/phpmyadmin/). Napravi tablicu korisnika, imat će 3 polja.
Ja ga kreiram u bazi podataka mysql, možete ga kreirati u drugoj bazi podataka. Zatim postavite vrijednosti kao na slici:
2. Potrebna je veza s ovom tablicom. Kreirajmo datoteku bd.php. Njegov sadržaj:
$db = mysql_connect("vaš MySQL poslužitelj","prijava za ovaj poslužitelj","lozinka za ovaj poslužitelj");
mysql_select_db ("naziv baze podataka na koju se spajamo", $db);
?>
U mom slučaju to izgleda ovako:
$db = mysql_connect("localhost","user","1234");
mysql_select_db("mysql",$db);
?>
Uštedjeti bd.php.
Sjajno! Imamo tablicu u bazi i vezu s njom. Sada možete krenuti u izradu stranice na kojoj će korisnici ostavljati svoje podatke.
3. Napravite reg.php datoteku sa sadržajem (svi komentari unutra):
Registracija
4. Napravite datoteku, koji će unijeti podatke u bazu i spremiti korisnika. spremi_korisnika.php(komentari unutra):
{
}
//ako se unese prijava i lozinka, onda ih obrađujemo tako da oznake i skripte ne rade, nikad se ne zna što ljudi mogu unijeti
//ukloni dodatne razmake
$login = trim($login);
$lozinka = trim($lozinka);
// povezivanje s bazom podataka
// provjerite postoji li korisnik s istom prijavom
$result = mysql_query("SELECT id FROM korisnika WHERE login="$login"",$db);
if (!empty($myrow["id"])) (
exit("Nažalost, prijava koju ste unijeli je već registrirana. Unesite drugu prijavu.");
}
// ako to nije slučaj, spremite podatke
$result2 = mysql_query("INSERT INTO korisnici (login,password) VALUES("$login","$password")");
// Provjerite ima li grešaka
ako ($result2=="TRUE")
{
echo "Uspješno ste se registrirali! Sada možete ući na stranicu. Početna stranica";
}
drugo(
echo "Greška! Niste registrirani.";
}
?>
5. Sada se naši korisnici mogu registrirati! Zatim morate stvoriti "vrata" za već registrirane korisnike za ulazak na stranicu. indeks.php(komentari unutra):
// cijeli postupak radi u sesijama. Tu se pohranjuju podaci korisnika dok je on na stranici. Vrlo je važno pokrenuti ih na samom početku stranice!!!
početak_sesije();
?>
Početna stranica
// Provjerite jesu li varijable prijava i ID korisnika prazne
if (prazno($_SESSION["login"]) ili prazno($_SESSION["id"]))
{
// Ako je prazno, tada ne prikazujemo vezu
echo "Prijavljeni ste kao gost
Ovaj link je dostupan samo registriranim korisnicima";
}
drugo
{
U datoteci indeks.php Prikazat ćemo poveznicu koja će biti otvorena samo registriranim korisnicima. To je cijela poanta skripte - ograničiti pristup svim podacima.
6. Ostaje datoteka s provjerom unesene prijave i lozinke. testreg.php (komentari unutra):
session_start();// cijeli postupak radi na sesijama. Tu se pohranjuju podaci korisnika dok je on na stranici. Vrlo je važno pokrenuti ih na samom početku stranice!!!
if (isset($_POST["login"])) ( $login = $_POST["login"]; if ($login == "") ( unset($login);) ) //unesite prijavu koju ste unijeli korisnika u varijablu $login, ako je prazna, uništite varijablu
if (isset($_POST["password"])) ( $password=$_POST["password"]; if ($password =="") ( unset($password);) )
//stavite lozinku koju je unio korisnik u varijablu $password, ako je prazna, uništite varijablu
if (empty($login) or empty($password)) //ako korisnik nije unio prijavu ili lozinku, izdajemo pogrešku i zaustavljamo skriptu
{
exit("Niste unijeli sve podatke, vratite se i ispunite sva polja!");
}
//ako se unese prijava i lozinka, onda ih obrađujemo tako da oznake i skripte ne rade, nikad se ne zna što ljudi mogu unijeti
$login = stripslashes($login);
$login = htmlspecialchars($login);
$lozinka = stripslashes($lozinka);
$lozinka = htmlspecialchars($lozinka);
//ukloni dodatne razmake
$login = trim($login);
$lozinka = trim($lozinka);
// povezivanje s bazom podataka
include("bd.php");// datoteka bd.php mora biti u istoj mapi kao i sve ostale, ako nije, samo promijenite putanju
$result = mysql_query("SELECT * FROM users WHERE login="$login"",$db); //dohvati iz baze sve podatke o korisniku s unesenom prijavom
$myrow = mysql_fetch_array($rezultat);
ako (prazno($myrow["lozinka"]))
{
//ako korisnik s upisanom prijavom ne postoji
}
drugo(
//ako postoji, provjerite lozinke
if ($myrow["password"]==$password) (
//ako se lozinke podudaraju, pokrećemo sesiju za korisnika! Možete mu čestitati, ušao je!
$_SESSION["login"]=$myrow["login"];
$_SESSION["id"]=$myrow["id"];//ovi podaci se vrlo često koriste, tako da će ih prijavljeni korisnik “nositi sa sobom”
echo "Uspješno ste ušli na stranicu! Početna stranica";
}
drugo(
//ako se lozinke ne podudaraju
Izlaz ("Žao nam je, prijava ili lozinka koju ste unijeli nisu točni.");
}
}
?>
OK, sada je sve gotovo! Lekcija može biti dosadna, ali vrlo korisna. Ovdje je prikazana samo ideja registracije, a zatim je možete poboljšati: dodati zaštitu, dizajn, podatkovna polja, učitavanje avatara, odjavu s računa (da biste to učinili, jednostavno uništite varijable iz sesije s funkcijom nepostavljeno) i tako dalje. Sretno!
Sve sam provjerio, radi kako treba!
Na mnogim stranicama koje svakodnevno pregledavamo na Internetu, gotovo sve imaju registraciju korisnika. U toj lekciji proći ćemo kroz osnove upravljanja korisnicima, završavajući s jednostavnim članskim područjem koje možete implementirati na svoju web stranicu.
Ova lekcija je osmišljena za početnike u učenju PHP-a gdje ćemo pogledati osnove upravljanja korisnicima.
Korak 1
Kreirajmo tablicu korisnika u bazi podataka u koju ćemo pohraniti podatke o korisnicima u polja tablice 4
- korisnički ID
- Korisničko ime
- Lozinka
- Email adresa
Upotrijebite SQL upit u nastavku za izradu baze podataka
STVARANJE TABLICE `korisnici` ( `UserID` INT(25 ) NOT NULL AUTO_INCREMENT PRIMARY KEY , `Korisničko ime` VARCHAR(65 ) NOT NULL, `Zaporka` VARCHAR(32) NOT NULL, `Adresa e-pošte` VARCHAR(255 ) NIJE NULL ) ;
početak_sesije(); $dbhost = "localhost" ; // Naziv glavnog računala na kojem se nalazi mysql poslužitelj, obično localhost $dbname = "baza podataka" ; // Naziv baze podataka $dbuser = "korisničko ime" ; // Korisničko ime baze podataka $dbpass = "lozinka" ; // Lozinka za pristup bazi podataka mysql_connect($dbhost, $dbuser, $dbpass) ili die("MySQL pogreška: ". mysql_error()) ; mysql_select_db($dbname) ili die("MySQL pogreška: ". mysql_error()) ; ?>
Ova datoteka je odgovorna za povezivanje s bazom podataka i bit će prikazana na svim stranicama. Pogledajmo detaljnije retke koda
početak_sesije();
Ova funkcija pokreće sesiju za novog korisnika, zatim ćemo u nju pohraniti podatke o tijeku sesije kako bismo mogli prepoznati korisnike koji su već identificirani
mysql_connect($dbhost, $dbuser, $dbpass) ili die("MySQL pogreška: " . mysql_error());
mysql_select_db($dbname) ili die("MySQL pogreška: " . mysql_error());
Svaka od ovih funkcija obavlja zasebne, ali povezane zadatke.
Funkcija mysql_connect spaja se na MySQL poslužitelj baze podataka; parametri u zagradama su varijable kojima su dodijeljene odgovarajuće vrijednosti Host, Korisničko ime, Lozinka, ako su podaci netočni prikazat će poruku o pogrešci
Funkcija mysql_select_db odabire bazu čije smo ime dodijelili varijabli $dbname, ako se baza podataka ne može pronaći, prikazuje poruku o pogrešci
Korak 2 Stvorite datoteku index.php
Podosta važan element na našoj stranici - prvi je PHP niz; ovaj redak će uključivati datoteku koju smo stvorili iznad ( baza.php), i u biti nam omogućuje pristup bilo čemu iz te datoteke u našoj trenutnoj datoteci. To ćemo učiniti pomoću sljedećeg retka PHP koda. Napravite datoteku pod nazivom index.php i postavite ovaj kod na vrh.
Napravite novu datoteku index.php i zalijepite sljedeći kod na samom početku
Ova linija će povezati datoteku koju smo stvorili iznad (base.php), što će nam omogućiti pristup kodu te datoteke u našoj trenutnoj datoteci.
To čini funkcija uključi()
Sada ćemo napraviti vanjsko sučelje gdje će korisnik unijeti svoje podatke za registraciju, a ako je već registriran dati mogućnost promjene podataka. Budući da je ovaj tutorial usmjeren na PHP, nećemo se baviti HTML/CSS kodom izgled Učinit ćemo to kasnije kada izradimo naš CSS stilski list, ali za sada ćemo samo zalijepiti ovaj kod nakon prethodnog retka.
Sada, prije nego što uđemo u PHP program, pogledajmo princip njegovog rada, koji bi u datoj situaciji trebao biti prikazan na ekranu:
- Ako je korisnik već prijavljen, prikazujemo stranicu s raznim opcijama koje su bile skrivene prije registracije.
- Ako se korisnik još nije prijavio, ali se registrirao, prikazujemo obrazac za unos korisničkog imena i lozinke.
- Ako koraci 1 i 2 nisu dovršeni, prikazujemo obrazac za registraciju.
Izgledat će ovako:
ako (! prazno prazno { // Ovdje se prikazuju skrivene opcije } elseif (! prazno prazno ($_POST [ "lozinka" ] ) ) { // Prikaži obrazac za prijavu } drugo { // Prikaži obrazac za registraciju } ?>
Kada je korisnik autoriziran na našoj web stranici, informacije se pohranjuju u sesiji; možemo im pristupiti putem globalnog niza $_SESSION. Korištenje funkcije prazno i ! u if uvjetu provjeravamo ima li varijabla vrijednost, ako varijabla ima vrijednost izvršavamo kod između vitičastih zagrada.
Sljedeći red radi na isti način, samo ovaj put s $_POST globalni niz. Ovaj niz sadrži sve podatke proslijeđene kroz obrazac za prijavu koji ćemo kasnije izraditi. Posljednji else uvjet će se izvršiti ako prethodni uvjeti nisu zadovoljeni.
Sada kada razumijemo logiku, umetnimo sljedeći kod u datoteku index.php između oznaka
if (! prazno ($_SESSION [ "LoggedIn" ] ) && ! prazno ($_SESSION [ "Korisničko ime" ] ) )
{
?>
=
$_SESSION
[
"Username"
]
?>
i svoju adresu e-pošte =
$_SESSION
[
"EmailAddress"
]
?>
. Sada ćete biti preusmjereni na svoj profil. Vaš račun nije pronađen ili ste unijeli netočno korisničko ime ili lozinku. Pokušajte ponovno. Dobro je da ste došli na registraciju.Korisnička zona
Uspješno ste se prijavili
"
;
jeka "Greška
"
;
jeka "Ulaz
Postoje dvije funkcije u ovom dijelu koda, a to su mysql_real_escape_string koji izbjegava posebne znakove u nizovima za korištenje u bazi podataka, čime vas štiti od loših ljudi, i md 5 ova funkcija šifrira sve što joj se proslijedi kao parametar, u ovom slučaju to je lozinka u globalnom polju $_POST. Sve rezultate funkcija pridružujemo varijablama $korisničko ime $lozinka .
$checklogin = mysql_query ( "SELECT * FROM korisnici WHERE Korisničko ime = "". $korisničko ime. "" I Lozinka = "" . $lozinka. """ ); if (mysql_num_rows($checklogin) == 1) { $row = mysql_fetch_array ($checklogin) ; $email = $row [ "EmailAddress" ] ; $_SESSION [ "Korisničko ime" ] = $korisničko ime; $_SESSION [ "EmailAddress" ] = $email; $_SESSION [ "Prijavljen" ] = 1;
U ovom dijelu koda moramo provjeriti postoji li takav korisnik, da bismo to učinili šaljemo upit bazi podataka, izvlačimo sva polja iz tablice korisnici gdje su polja Korisničko ime i Lozinka jednaka varijablama $korisničko ime i $lozinka. Rezultat upita pohranjuje se u varijablu $checklogin dalje u stanju ako funkcija mysql_broj_reda s broji broj redaka u upitu prema bazi podataka i ako je jednak 1, tada je korisnik pronađen, izvršavamo kod u vitičastim zagradama, funkcija mysql_fetch_array pretvara rezultat upita iz $checklogin u asocijativni niz, dodijelite vrijednost polja EmailAddress varijabli $e-pošta za buduću upotrebu.
U trenutnu sesiju unosimo prijavu i e-poštu, nakon čega se korisnik preusmjerava na svoj račun.
Korak-3
Sada moramo napraviti stranicu na kojoj će se korisnici registrirati.
Napravite register.php datoteku i kopirajte sljedeći kod u nju:
Greška
" ; jeka "Ova prijava je već zauzeta p>"
; } drugo { $registerquery = mysql_query ( "INSERT INTO korisnici (korisničko ime, lozinka, email adresa) VALUES("". $korisničko ime. "", "" . $lozinka. "", "" . $e-pošta. "")" ); ako ($registerquery) { jeka "Sjajno
" ; jeka "Vaš račun je uspješno kreiran. Možeš Voiti.
" ; } drugo { jeka "Greška
" ; jeka "Pokušajte se ponovno registrirati.
" ; } } } drugo { ?>Registracija
} ?>Ima nešto novo u ovom kodu, pisanje u bazu podataka
Ovo je isti upit prema bazi podataka koji je bio i prije, samo sada ne primamo informacije, već ih upisujemo naredbom INSERT.Prije svega trebamo naznačiti u koja polja će se unositi podaci, au području VRIJEDNOSTI , podaci koji će biti napisani u našem slučaju su varijable s vrijednostima koje je proslijedio korisnik. Obratite posebnu pozornost na pravila za formiranje zahtjeva.
Završetak koraka 4
Kako bi se korisnik odjavio, kreirajte datoteku logout.php i kopirajte kod u nju:
$_SESIJA = niz(); sesija_uništi(); ?>
Kao rezultat ovog koda, globalni niz $_SESSION se resetira i sesija se uništava, ne zaboravite staviti poveznicu na ovu datoteku u korisničku opciju.
I na kraju, stilizirajmo sve gore opisano, stvorimo datoteku style.css i tamo smjestimo sljedeći kod.
* { margina: 0; ispuna: 0; } tijelo { } a { boja : #000 ; } a :hover , a:active , a:visited ( tekst-ukras: nema; } #glavni ( širina: 780px; margina: 0 auto; margin-top: 50px; ispuna: 10px; boja pozadine: #EEE; } set polja obrasca (obrub: 0;) obrazac fieldset p br ( jasno : lijevo ; ) označiti { margin-top: 5px; prikaz: blok; širina: 100px; ispuna: 0; plovak: lijevo; } ulazni { obitelj-fontova: Trebuchet MS; obrub: 1px puni #CCC; margina-dno: 5px; boja pozadine: #FFF; ispuna: 2px; } ulazni :lebdjeti ( rub : 1px solid #222 ; boja pozadine: #EEE; }
To je u osnovi sve, naravno, primjer dan u ovoj lekciji daleko je od savršenog, ali je dizajniran za početnike da daju ideju o osnovama.
Pogledajmo neke dijelove ovog koda
$korisničko ime = mysql_real_escape_string($_POST["korisničko ime"]);
$lozinka = md5(mysql_real_escape_string($_POST["lozinka"]));
Postoje dvije funkcije u ovom odjeljku koda, ovo je mysql _real _escape _string koja izbjegava posebne znakove u nizovima za korištenje u bazi podataka, čime vas štiti od loših ljudi, a md 5 ova funkcija šifrira sve što joj se proslijedi kao parametar , u ovom slučaju to je lozinka u globalnom nizu $_POST. Sve rezultate funkcija dodjeljujemo varijablama $username , $lozinka.
U ovom ćete članku naučiti kako izraditi obrazac za registraciju i autorizaciju koristeći HTML, JavaScript, PHP i MySql. Takvi se obrasci koriste na gotovo svim web stranicama, bez obzira na njihovu vrstu. Stvoreni su za forum, internetsku trgovinu, društvene mreže (kao što su Facebook, Twitter, Odnoklassniki) i mnoge druge vrste stranica.
Ako imate web stranicu na svom lokalnom računalu, nadam se da već imate instaliran lokalni poslužitelj i radi. Bez toga ništa neće uspjeti.
Izrada tablice u bazi podataka
Za provedbu registracije korisnika prije svega potrebna nam je baza podataka. Ako ga već imate, onda je super, u suprotnom, morate ga stvoriti. U članku sam detaljno objasnio kako to učiniti.
I tako, imamo bazu podataka (skraćeno DB), sada trebamo napraviti tablicu korisnika u koje ćemo dodavati naše registrirane korisnike.
U članku sam također objasnio kako napraviti tablicu u bazi podataka. Prije izrade tablice moramo odrediti koja će polja sadržavati. Ova polja će odgovarati poljima iz obrasca za registraciju.
Pa smo pomislili, zamislili koja bi polja naš obrazac imao i napravili tablicu korisnika sa ovim poljima:
- iskaznica- Identifikator. Polje iskaznica Svaka tablica u bazi podataka bi ga trebala imati.
- ime- Da sačuvam ime.
- prezime- Da sačuvamo prezime.
- elektronička pošta- Za spremanje poštanske adrese. Za prijavu ćemo koristiti e-mail, tako da ovo polje mora biti jedinstveno, odnosno imati UNIQUE indeks.
- email_status- Polje za označavanje je li mail potvrđen ili ne. Ako je pošta potvrđena, tada će imati vrijednost 1, inače je vrijednost 0.
- lozinka- Za spremanje lozinke.
Ako želite da vaš obrazac za registraciju ima još neka polja, možete ih dodati i ovdje.
To je to, naš stol korisnika spreman. Prijeđimo na sljedeću fazu.
Veza s bazom podataka
Napravili smo bazu podataka, sada se trebamo spojiti na nju. Spojit ćemo se pomoću PHP ekstenzije MySQLi.
U mapi naše stranice kreirajte datoteku s imenom dbconnect.php, i u njega napišite sljedeću skriptu:
Pogreška veze s DB-om. Opis pogreške: ".mysqli_connect_error()."
"; exit(); ) // Postavite kodiranje veze $mysqli->set_charset("utf8"); // Radi praktičnosti, ovdje dodajte varijablu koja će sadržavati naziv naše stranice $address_site = "http://testsite .lokalno" ; ?>Ova datoteka dbconnect.php morat će se povezati s rukovateljima obrascima.
Obratite pažnju na varijablu $address_site, ovdje sam naveo naziv svoje testne stranice na kojoj ću raditi. U skladu s tim navedite naziv svoje stranice.
Struktura stranice
Sada pogledajmo HTML strukturu naše stranice.
Premjestit ćemo zaglavlje i podnožje stranice u zasebne datoteke, zaglavlje.php I podnožje.php. Uključit ćemo ih na sve stranice. Naime na glavnoj stranici (datoteka indeks.php), na stranicu s obrascem za registraciju (datoteka obrazac_registar.php) i na stranicu s obrascem za autorizaciju (datoteka obrazac_auth.php).
Blokiraj s našim vezama, registracija I ovlaštenje, dodajte ih u zaglavlje stranice tako da budu prikazani na svim stranicama. Jedna veza bit će unesena na stranica obrasca za registraciju(datoteka obrazac_registar.php), a drugi na stranicu sa obrazac ovlaštenja(datoteka obrazac_auth.php).
Sadržaj datoteke header.php:
Naziv naše stranice
Kao rezultat toga, naša glavna stranica izgleda ovako:
Naravno, vaša stranica može imati potpuno drugačiju strukturu, ali to nam sada nije važno. Glavna stvar je da postoje poveznice (gumbi) za registraciju i autorizaciju.
Sada prijeđimo na obrazac za registraciju. Kao što već razumijete, imamo to u dosjeu obrazac_registar.php.
Idite u bazu podataka (u phpMyAdmin), otvorite strukturu tablice korisnika i pogledajte koja nam polja trebaju. To znači da su nam potrebna polja za unos imena i prezimena, polje za unos poštanske adrese (Email) i polje za unos lozinke. A iz sigurnosnih razloga ćemo dodati polje za unos captcha.
Na poslužitelju, kao rezultat obrade registracijske forme, mogu se pojaviti razne greške zbog kojih se korisnik neće moći registrirati. Stoga, da bi korisnik razumio zašto registracija ne uspijeva, potrebno je prikazati poruke o tim greškama.
Prije prikazivanja obrasca dodajte blok za prikaz poruka o pogreškama iz sesije.
I još nešto, ako je korisnik već autoriziran, a iz znatiželje ide na stranicu za registraciju izravno upisivanjem u adresnu traku preglednika adresa_mjesta/registar_obrazca.php, tada ćemo u ovom slučaju umjesto obrasca za registraciju prikazati zaglavlje da je on već registriran.
Općenito, kod datoteke obrazac_registar.php dobili smo ovo:
Već ste registrirani
U pregledniku stranica s obrascem za registraciju izgleda ovako:
Pomoću potreban atribut, učinili smo sva polja obaveznim.
Obratite pozornost na šifru obrasca za registraciju gdje prikazuje se captcha:
Naveli smo put do datoteke u vrijednosti atributa src za sliku captcha.php, koji generira ovaj captcha.
Pogledajmo kod datoteke captcha.php:
Kod je dobro komentiran, pa ću se fokusirati samo na jednu točku.
Unutar funkcije imageTtfText(), naveden je put do fonta verdana.ttf. Da bi captcha radila ispravno, moramo stvoriti mapu fontovi, i tamo postavite datoteku fonta verdana.ttf. Možete ga pronaći i preuzeti s interneta ili preuzeti iz arhive s materijalima ovog članka.
Završili smo s HTML strukturom, vrijeme je da krenemo dalje.
Provjera valjanosti e-pošte pomoću jQueryja
Svaki obrazac treba provjeriti valjanost unesenih podataka, kako na strani klijenta (koristeći JavaScript, jQuery), tako i na strani poslužitelja.
Posebnu pozornost moramo obratiti na polje Email. Vrlo je važno da je upisana poštanska adresa važeća.
Za ovo polje za unos postavili smo vrstu e-pošte (type="email"), ovo nas malo upozorava na netočne formate. Ali to nije dovoljno, jer kroz inspektor koda koji nam preglednik nudi, možemo jednostavno promijeniti vrijednost atributa tip S elektronička pošta na tekst, i to je to, naš ček više neće vrijediti.
I u ovom slučaju, moramo napraviti pouzdaniju provjeru. Da bismo to učinili, koristit ćemo jQuery biblioteku iz JavaScripta.
Za povezivanje jQuery biblioteke, u datoteci zaglavlje.php između oznaka , prije završne oznake , dodajte ovaj redak:
Odmah nakon ovog retka dodat ćemo kod za potvrdu e-pošte. Ovdje ćemo dodati kod za provjeru duljine unesene lozinke. Njegova duljina mora biti najmanje 6 znakova.
Pomoću ove skripte provjeravamo ispravnost unesene adrese e-pošte. Ako je korisnik unio netočnu e-poštu, prikazujemo poruku o pogrešci o tome i onemogućujemo gumb za slanje obrasca. Ako je sve u redu, uklanjamo grešku i aktiviramo gumb za slanje obrasca.
I tako smo završili s provjerom valjanosti obrasca na strani klijenta. Sada ga možemo poslati na server, gdje ćemo također napraviti par provjera i dodati podatke u bazu.
Registracija korisnika
Obrazac šaljemo u datoteku na obradu registar.php, POST metodom. Naziv ove datoteke rukovatelja naveden je u vrijednosti atributa akcijski. A način slanja naveden je u vrijednosti atributa metoda.
Otvori ovu datoteku registar.php i prva stvar koju trebamo napraviti je napisati funkciju pokretanja sesije i povezati datoteku koju smo prethodno napravili dbconnect.php(U ovoj datoteci napravili smo vezu s bazom podataka). I također, odmah deklarirajmo ćelije poruke_pogreške I poruke_uspjeha u globalnom nizu sesija. U poruke_pogreške zabilježit ćemo sve poruke o pogreškama koje se pojave tijekom obrade obrazaca i u poruke_uspjeha, snimat ćemo radosne poruke.
Prije nego nastavimo, moramo provjeriti je li obrazac uopće predan?. Napadač može pogledati vrijednost atributa akcijski iz obrasca i saznajte koja datoteka obrađuje ovaj obrazac. Možda mu padne na pamet otići izravno na ovu datoteku upisivanjem sljedeće adrese u adresnu traku preglednika: http://adresa_mjesta/registracija.php
Stoga moramo provjeriti ćeliju u globalnom POST nizu čiji naziv odgovara nazivu našeg gumba "Registracija" iz obrasca. Na taj način provjeravamo je li kliknuto na gumb "Registracija" ili ne.
Ako napadač pokuša otići izravno na ovu datoteku, primit će poruku o pogrešci. Dopustite mi da vas podsjetim da varijabla $address_site sadrži naziv stranice i deklarirana je u datoteci dbconnect.php.
Greška! glavna stranica.
"); } ?>Captcha vrijednost u sesiji dodana je kada je generirana, u datoteci captcha.php. Kao podsjetnik, ponovno ću vam pokazati ovaj dio koda iz datoteke captcha.php, gdje se captcha vrijednost dodaje sesiji:
Sada prijeđimo na samu provjeru. U datoteci registar.php, unutar if bloka, gdje provjeravamo je li kliknuto na gumb "Registracija", odnosno gdje je naznačen komentar " // (1) Prostor za sljedeći dio koda"pišemo:
//Provjeri primljeni captcha //Skrati razmake s početka i kraja retka $captcha = trim($_POST["captcha"]); if(isset($_POST["captcha"]) && !empty($captcha))( //Usporedite primljenu vrijednost s vrijednošću iz sesije. if(($_SESSION["rand"] != $captcha) && ($_SESSION ["rand"] != ""))( // Ako captcha nije točna, vraćamo korisnika na stranicu za registraciju i tamo ćemo mu prikazati poruku o pogrešci da je unio krivi captcha . $error_message = "
Greška! Unijeli ste krivi captcha
"; // Spremite poruku o pogrešci u sesiju. $_SESSION["error_messages"] = $error_message; // Vratite korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: " .$address_site ."/form_register.php"); //Zaustavite skriptu exit(); ) // (2) Mjesto za sljedeći dio koda )else( //Ako captcha nije proslijeđena ili je prazna izlaz ("Greška! Ne postoji kontrolni kod, odnosno captcha kod. Možete otići na glavnu stranicu.
"); }Zatim moramo obraditi primljene podatke iz POST polja. Prije svega trebamo provjeriti sadržaj globalnog POST niza, odnosno postoje li tamo ćelije čiji nazivi odgovaraju nazivima polja za unos iz naše forme.
Ako ćelija postoji, tada skraćujemo razmake s početka i kraja retka iz ove ćelije, u suprotnom, preusmjeravamo korisnika natrag na stranicu s formularom za registraciju.
Zatim, nakon što smo izrezali razmake, dodamo liniju u varijablu i provjerimo je li varijabla prazna, ako nije prazna, idemo dalje, u suprotnom preusmjeravamo korisnika natrag na stranicu s formularom za registraciju.
Zalijepite ovaj kod na navedeno mjesto" // (2) Prostor za sljedeći dio koda".
/* Provjerite ima li podataka poslanih iz obrasca u globalnom nizu $_POST i zamotajte dostavljene podatke u regularne varijable.*/ if(isset($_POST["first_name"]))( //Skratite razmake od početka i kraj niza $first_name = trim($_POST["first_name"]); //Provjeri da li je varijabla prazna if(!empty($first_name))( // Radi sigurnosti, konvertiraj posebne znakove u HTML entitete $first_name = htmlspecialchars($first_name, ENT_QUOTES) ; )else( // Spremite poruku pogreške u sesiju. $_SESSION["error_messages"] .= "
Unesite svoje ime
Nedostaje polje za naziv
"; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_register.php"); //Zaustavi izlaz skripte(); ) if( isset($_POST["last_name"]))( //Skrati razmake s početka i kraja retka $last_name = trim($_POST["last_name"]); if(!empty($last_name)) ( // Radi sigurnosti, pretvorite posebne znakove u HTML entitete $last_name = htmlspecialchars($last_name, ENT_QUOTES); )else( // Spremite poruku o pogrešci u sesiju. $_SESSION["error_messages"] .= "Molimo unesite svoje prezime
"; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_register.php"); //Zaustavi izlaz skripte(); ) )else ( // Spremi poruku pogreške u sesiju. $_SESSION["error_messages"] .= "Nedostaje polje za prezime
"; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_register.php"); //Zaustavi izlaz skripte(); ) if( isset($_POST["email"]))( //Skrati razmake s početka i kraja retka $email = trim($_POST["email"]); if(!empty($email)) ( $email = htmlspecialchars ($email, ENT_QUOTES); // (3) Lokacija koda za provjeru formata adrese e-pošte i njezine jedinstvenosti )else( // Spremite poruku o pogrešci u sesiju. $_SESSION["error_messages"] .= "Unesi svoj email
"; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_register.php"); //Zaustavi izlaz skripte(); ) )else ( // Spremi poruku pogreške u sesiju. $_SESSION["error_messages"] .= " "; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_register.php"); //Zaustavi izlaz skripte(); ) if( isset($_POST["password"]))( //Skrati razmake s početka i kraja niza $password = trim($_POST["password"]); if(!empty($password)) ( $password = htmlspecialchars ($password, ENT_QUOTES); //Kriptiraj lozinku $password = md5($password."top_secret"); )else( // Spremi poruku o pogrešci u sesiju. $_SESSION["error_messages"] .= "Unesite svoju lozinku
"; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_register.php"); //Zaustavi izlaz skripte(); ) )else ( // Spremi poruku pogreške u sesiju. $_SESSION["error_messages"] .= " "; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_register.php"); //Zaustavi izlaz skripte(); ) // (4) Mjesto za kod za dodavanje korisnika u bazuOd posebnog značaja je polje elektronička pošta. Moramo provjeriti format primljene poštanske adrese i njezinu jedinstvenost u bazi podataka. Odnosno, postoji li već registrirani korisnik s istom adresom e-pošte?
Na navedenoj lokaciji" // (3) Lokacija koda za provjeru formata poštanske adrese i njezine jedinstvenosti" dodajte sljedeći kod:
//Provjerite format primljene adrese e-pošte koristeći regularni izraz $reg_email = "/^**@(+(*+)*\.)++/i"; //Ako format primljene adrese e-pošte ne odgovara regularnom izrazu if(!preg_match($reg_email, $email))( // Spremi poruku o pogrešci u sesiju. $_SESSION["error_messages"] .= "
Unijeli ste netočan email
"; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_register.php"); //Zaustavi izlaz skripte(); ) // Provjeravamo je li takva adresa već u bazi podataka. $result_query = $mysqli->query("SELECT `email` FROM `users` WHERE `email`="".$email."""); / /Ako broj primljenih ima točno jedan red, što znači da je korisnik s ovom adresom e-pošte već registriran if($result_query->num_rows == 1)( //Ako dobiveni rezultat nije lažan if(($row = $result_query->fetch_assoc()) != false) ( // Spremi poruku o pogrešci u sesiju. $_SESSION["error_messages"] .= "Korisnik s ovom email adresom je već registriran
"; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_register.php"); )else( // Spremi poruku o pogrešci na sesiju . $_SESSION["error_messages"] .= "Pogreška u upitu baze podataka
"; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_register.php"); ) /* zatvaranje odabira */ $ result_query-> close(); //Zaustavljanje skripte exit(); ) /* zatvaranje odabira */ $result_query->close();I tako, završili smo sa svim provjerama, vrijeme je da dodamo korisnika u bazu podataka. Na navedenoj lokaciji" // (4) Mjesto za kod za dodavanje korisnika u bazu" dodajte sljedeći kod:
//Upit za dodavanje korisnika u bazu $result_query_insert = $mysqli->query("INSERT INTO `users` (ime, prezime, email, lozinka) VRIJEDNOSTI ("".$first_name."", "".$last_name ." ", "".$email.", "".$lozinka."")"); if(!$result_query_insert)( // Spremi poruku o pogrešci u sesiju. $_SESSION["error_messages"] .= "
Pogreška u zahtjevu za dodavanje korisnika u bazu podataka
"; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_register.php"); //Zaustavi izlaz skripte(); )else( $_SESSION["success_messages"] = " "; //Pošaljite korisnika na stranicu za autorizaciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_auth.php"); ) /* Dovršavanje zahtjeva */ $ result_query_insert-> close(); //Zatvori vezu s bazom podataka $mysqli->close();Ako se dogodila pogreška u zahtjevu za dodavanje korisnika u bazu, dodajemo poruku o toj pogrešci u sesiju i vraćamo korisnika na stranicu za registraciju.
Inače, ako je sve prošlo u redu, sesiji dodajemo i poruku, ali ovaj put je ugodnije, naime kažemo korisniku da je registracija uspjela. I preusmjeravamo ga na stranicu s obrascem za autorizaciju.
Skripta za provjeru formata adrese e-pošte i duljine lozinke nalazi se u datoteci zaglavlje.php, pa će vrijediti i za polja iz ovog obrasca.
Sesija se također pokreće u datoteci zaglavlje.php, dakle u datoteci obrazac_auth.php Nema potrebe za pokretanjem sesije, jer ćemo dobiti grešku.
Kao što sam već rekao, ovdje radi i skripta za provjeru formata email adrese i duljine lozinke. Stoga, ako korisnik unese netočnu e-mail adresu ili kratku lozinku, odmah će dobiti poruku o pogrešci. Tipka ući postat će neaktivan.
Nakon ispravljanja grešaka, gumb ući postaje aktivan, a korisnik će obrazac moći poslati na poslužitelj gdje će se obraditi.
Autorizacija korisnika
Pripisati vrijednost akcijski hendikep autorizacije ima navedenu datoteku auth.php, to znači da će obrazac biti obrađen u ovoj datoteci.
I tako, otvorite datoteku auth.php i napisati kod za obradu autorizacijskog obrasca. Prvo što trebate učiniti je pokrenuti sesiju i povezati datoteku dbconnect.php za povezivanje s bazom podataka.
//Deklarirajte ćeliju za dodavanje pogrešaka koje se mogu pojaviti prilikom obrade obrasca. $_SESSION["error_messages"] = ""; //Deklarirajte ćeliju za dodavanje uspješnih poruka $_SESSION["success_messages"] = "";
/* Provjerite je li obrazac predan, odnosno je li kliknuto na gumb Prijava. Ako da, idemo dalje, ako ne, korisniku ćemo prikazati poruku o pogrešci koja pokazuje da je izravno pristupio ovoj stranici. */ if(isset($_POST["btn_submit_auth"]) && !empty($_POST["btn_submit_auth"]))( //(1) Prostor za sljedeći dio koda )else( exit("
Greška! Ovoj stranici ste pristupili izravno, tako da nema podataka za obradu. Možete otići na glavnu stranicu.
"); }//Provjerite primljeni captcha if(isset($_POST["captcha"]))( //Skratite razmake s početka i kraja retka $captcha = trim($_POST["captcha"]); if(! empty($captcha ))( //Usporedite primljenu vrijednost s vrijednošću iz sesije. if(($_SESSION["rand"] != $captcha) && ($_SESSION["rand"] != "")) ( // Ako captcha nije točna , vraćamo korisnika na stranicu za autorizaciju i tamo ćemo mu prikazati poruku o pogrešci da je unio krivi captcha. $error_message = "
Greška! Unijeli ste krivi captcha
"; // Spremite poruku o pogrešci u sesiju. $_SESSION["error_messages"] = $error_message; // Vratite korisnika na stranicu za autorizaciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: " .$address_site ."/form_auth.php"); //Zaustavi skriptu exit(); ) )else( $error_message = "Greška! Polje za unos captcha ne smije biti prazno.
"; // Spremite poruku o pogrešci u sesiju. $_SESSION["error_messages"] = $error_message; // Vratite korisnika na stranicu za autorizaciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: " .$address_site ."/form_auth.php"); //Zaustavite skriptu exit(); ) //(2) Mjesto za obradu email adrese //(3) Mjesto za obradu lozinke //(4) Mjesto za sastavljanje upita bazi podataka )else ( //Ako captcha nije proslijeđena exit("Greška! Ne postoji kontrolni kod, odnosno captcha kod. Možete otići na glavnu stranicu.
"); }Ako je korisnik ispravno unio kontrolni kod, idemo dalje, u protivnom ga vraćamo na stranicu za autorizaciju.
Provjera poštanske adrese
//Skraćivanje razmaka s početka i kraja retka $email = trim($_POST["email"]); if(isset($_POST["email"]))( if(!empty($email))( $email = htmlspecialchars($email, ENT_QUOTES); //Provjerite format primljene adrese e-pošte koristeći regularni izraz $ reg_email = " /^**@(+(*+)*\.)++/i"; //Ako format primljene adrese e-pošte ne odgovara regularnom izrazu if(!preg_match($reg_email, $email ))( // Spremi u poruku o pogrešci sesije. $_SESSION["error_messages"] .= "
Unijeli ste netočan email
"; //Vrati korisnika na stranicu za autorizaciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_auth.php"); //Zaustavi skriptu exit(); ) )else ( // Spremi poruku pogreške u sesiju. $_SESSION["error_messages"] .= "Polje za unos poštanske adrese (email) ne smije biti prazno.
"; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_register.php"); //Zaustavi izlaz skripte(); ) )else ( // Spremi poruku pogreške u sesiju. $_SESSION["error_messages"] .= "Nedostaje polje za unos e-pošte
"; //Vrati korisnika na stranicu za autorizaciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_auth.php"); //Zaustavi skriptu exit(); ) // (3) Područje obrade lozinkeUkoliko je korisnik unio e-mail adresu u krivom formatu ili je vrijednost polja za e-mail adresu prazna, vraćamo ga na stranicu za autorizaciju gdje ispisujemo poruku o tome.
Provjera lozinke
Sljedeće polje za obradu je polje za lozinku. Na navedeno mjesto" //(3) Mjesto za obradu lozinke", pišemo:
If(isset($_POST["password"]))( //Skratite razmake s početka i kraja niza $password = trim($_POST["password"]); if(!empty($password))( $password = htmlspecialchars($password, ENT_QUOTES); //Kriptiraj lozinku $password = md5($password."top_secret"); )else( //Spremi poruku o pogrešci u sesiju. $_SESSION["error_messages"] . = "
Unesite svoju lozinku
"; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_auth.php"); //Zaustavi izlaz skripte(); ) )else ( // Spremi poruku pogreške u sesiju. $_SESSION["error_messages"] .= "Nedostaje polje za lozinku
"; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_auth.php"); //Zaustavi izlaz skripte(); )Ovdje koristimo funkciju md5() za šifriranje primljene lozinke, jer su naše lozinke u bazi podataka u šifriranom obliku. Dodatna tajna riječ u enkripciji, u našem slučaju " strogo čuvana tajna" mora biti onaj koji je korišten prilikom registracije korisnika.
Sada trebate napraviti upit prema bazi podataka kako biste odabrali korisnika čija je adresa e-pošte jednaka primljenoj adresi e-pošte i čija je lozinka jednaka primljenoj lozinci.
//Upit u bazi podataka na temelju odabira korisnika. $result_query_select = $mysqli->query("SELECT * FROM `users` WHERE email = "".$email."" AND password = "".$password."""); if(!$result_query_select)( // Spremi poruku o pogrešci u sesiju. $_SESSION["error_messages"] .= "
Pogreška upita prilikom odabira korisnika iz baze podataka
"; //Vrati korisnika na stranicu za registraciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_auth.php"); //Zaustavi izlaz skripte(); )else( //Provjeriti nema li korisnika s takvim podacima u bazi, zatim prikazati poruku o grešci if($result_query_select->num_rows == 1)( // Ako uneseni podaci odgovaraju podacima iz baze, spremiti prijavu i lozinku za polje sesija. $_SESSION["email"] = $email; $_SESSION["password"] = $password; //Vrati korisnika na zaglavlje glavne stranice("HTTP/1.1 301 Moved Permanently" ); header("Lokacija: ".$address_site ."/index.php"); )else( // Spremi poruku o pogrešci u sesiju. $_SESSION["error_messages"] .= "Netočna prijava i/ili lozinka
"; //Vrati korisnika na stranicu za autorizaciju header("HTTP/1.1 301 Moved Permanently"); header("Lokacija: ".$address_site."/form_auth.php"); //Zaustavi skriptu exit(); ) )Izlaz sa stranice
I zadnja stvar koju implementiramo je postupak za napuštanje stranice. Trenutno u zaglavlju prikazujemo poveznice na stranicu za autorizaciju i stranicu za registraciju.
U zaglavlju stranice (datoteka zaglavlje.php), pomoću sesije provjeravamo je li korisnik već autoriziran. Ako nije, tada prikazujemo linkove za registraciju i autorizaciju, u suprotnom (ako je ovlašten), tada umjesto linkova za registraciju i autorizaciju prikazujemo link Izlaz.
Izmijenjeni dio koda iz datoteke zaglavlje.php:
Registracija
Izlaz
Kada kliknete na vezu za izlaz sa stranice, prelazimo na datoteku odjava.php, gdje jednostavno uništavamo ćelije s email adresom i lozinkom iz sesije. Nakon toga vraćamo korisnika natrag na stranicu na kojoj je link kliknut Izlaz.
Kod datoteke odjava.php:
To je sve. Sada znate kako implementirati i obraditi registracijske i autorizacijske obrasce korisnika na vašoj web stranici. Ovi se obrasci nalaze na gotovo svakoj web stranici, pa bi ih svaki programer trebao znati izraditi.
Također smo naučili kako validirati ulazne podatke, kako na strani klijenta (u pregledniku, koristeći JavaScript, jQuery) tako i na strani poslužitelja (pomoću PHP-a). I mi smo naučili provesti postupak za napuštanje stranice.
Sve skripte su testirane i rade. Arhivu s datotekama ove male stranice možete preuzeti na ovom linku.
U budućnosti ću napisati članak u kojem ću opisati. Također planiram napisati članak u kojem ću objasniti (bez ponovnog učitavanja stranice). Dakle, kako biste bili informirani o objavljivanju novih članaka, možete se pretplatiti na moju web stranicu.
Ako imate bilo kakvih pitanja, slobodno me kontaktirajte, a ako primijetite bilo kakvu grešku u članku, javite mi.
Plan lekcije (5. dio):
- Izrada HTML strukture za autorizacijski obrazac
- Zaprimljene podatke obrađujemo
- Pozdrav korisnika prikazujemo u zaglavlju stranice
Svidio vam se članak?
Kako bi se posjetitelji stranice podijelili u određene skupine, na stranici mora biti instaliran mali sustav registracija u php. Na taj način posjetitelje uvjetno dijelite na dvije skupine jednostavno slučajnih posjetitelja i na povlašteniju skupinu korisnika kojima dajete vrjednije informacije.
U većini slučajeva koristi se pojednostavljeni sustav registracije, koji je napisan u php u jednoj datoteci registar.php.
Dakle, malo smo skrenuli, a sada ćemo pobliže pogledati registracijsku datoteku.
Register.php datoteku
Kako vam to ne bi oduzelo puno vremena, izradit ćemo sustav koji će prikupljati korisnike, prihvaćajući od njih minimalne podatke za kontakt. U ovom slučaju sve ćemo unijeti u mysql bazu. Za najveću brzinu baze kreirat ćemo tablicu korisnika u MyISAM formatu i utf-8 kodiranju.
Bilješka! Sve skripte uvijek moraju biti napisane u istom kodiranju. Sve datoteke stranice i MySql baza podataka moraju biti u istom kodiranju. Najčešća kodiranja su UTF-8 i Windows-1251.
Zašto morate sve napisati u jednom kodiranju, o čemu ćemo govoriti kasnije. Za sada uzmite ovu informaciju kao strogo pravilo za izradu skripti, inače ćete u budućnosti imati problema sa skriptama. U redu je, naravno, ali samo ćete izgubiti puno vremena tražeći pogreške u skripti.
Kako će sama skripta funkcionirati?
Želimo sve pojednostaviti i dobiti brze rezultate. Stoga ćemo od korisnika dobiti samo prijavu, e-mail i lozinku. A kako bismo se zaštitili od neželjenih robota, instalirat ćemo mali captcha. Inače će neki dečko iz Londona napisati malog robota parsera koji će u nekoliko minuta napuniti cijelu bazu podataka lažnim korisnicima i radovati se njegovoj genijalnosti i nekažnjivosti.
Evo samog scenarija. Sve je snimljeno u jednoj datoteci registar.php:
! `; // crveni upitnik $sha=$sh."scripts/pro/"; //put do glavne mape $bg=` bgcolor="#E1FFEB"`; // boja pozadine redaka?> Primjer registracijske skripte register.php style.css" />
U ovom slučaju, skripta se odnosi na sebe. A to je obrazac i obrađivač podataka unesenih u obrazac. Imajte na umu da je datoteka komprimirana kao zip arhiva i sadrži konfiguracijsku datoteku config.php, ispis korisničke baze podataka, datoteku koja sadrži pomoćne funkcije functions.php, stilsku datoteku style.css i samu datoteku register.php. Također postoji nekoliko datoteka koje su odgovorne za rad i generiranje captcha simbola.
Laravel zahtijeva Composer za upravljanje ovisnostima projekta. Dakle, prije instaliranja Laravela, provjerite imate li Composer instaliran na vašem sustavu. U slučaju da prvi put čujete za Composer, to je alat za upravljanje ovisnostima za php sličan nodeovom npm-u.
Da biste instalirali Composer na svoj stroj, pogledajte ovaj post:
Instaliranje Laravela na Windows:
Slijedite korake u nastavku da biste instalirali laravel na Windows stroj. Bez obzira što imate xampp/wamp stack, radi za oba. Na WAMP-u svakako instalirajte laravel u mapu "www" i na XAMPP, očito "htdocs".
KORAK-1) Otvorite mapu "htdocs" na XAMPP-u, držite tipku SHIFT i desnom tipkom miša kliknite na mapu i odaberite "otvori prozor naredbe ovdje". Alternativno, možete otvoriti naredbeni prozor i promijeniti direktorij u "xampp/htdocs".
KORAK-2) Unesite sljedeću naredbu.
Skladatelj create-project laravel/laravel my_laravel_site --prefer-dist
Ovdje je "my_laravel_site" naziv mape u koju će se instalirati laravel datoteke. Promijenite ovo po svom ukusu.
KORAK-3) Sada je vrijeme za strpljenje jer će instalacija laravela potrajati neko vrijeme.
KORAK-4) Nakon instalacije, promijenite direktorij u "my_laravel_site" (cd "my_laravel_site") na naredbenom retku i unesite naredbu ispod.
Php obrtnički servis
KORAK-5) Ovo će prikazati poruku nešto poput "Laravel razvojni poslužitelj pokrenut:" zajedno s url-om.
KORAK-6) Kopirajte i zalijepite url u preglednik. Ako stvari budu kako treba, vidjet ćete laravel zaslon dobrodošlice.
KORAK-7) Gotovo! Uspješno ste instalirali laravel na Windows stroj i spremni ste za rad.
Postavljanje aplikacijskog ključa:
Laravel zahtijeva malo konfiguracije nakon instalacije. Zahtijeva da postavite ključ aplikacije. Ovo je nasumični niz od 32 znaka koji se koristi za šifriranje sesije i drugih osjetljivih podataka. Obično će se to postaviti automatski kada instalirate laravel putem skladatelja ili programa za instalaciju laravela.
U slučaju da nije postavljeno, morate to učiniti ručno. Najprije preimenujte datoteku ".env.example" u ".env" u korijenu vaše aplikacije. Zatim otvorite naredbeni redak i prijeđite na mapu projekta laravel. Sada pokrenite donju naredbu za generiranje ključa.
Php artisan ključ: generiraj
Kopirajte ovaj generirani ključ u varijablu APP_KEY u datoteci ".env". Spremite i gotovi ste.
Instaliranje određene Laravel verzije:
Gore navedena metoda natjerat će skladatelja da preuzme i instalira najnoviju verziju Laravela. Ako želite instalirati starije verzije laravela na svoje računalo, svakako uključite odgovarajući broj verzije u naredbu create-project.
Skladatelj create-project laravel/laravel=5.4 your-project-name --prefer-dist Pročitajte također:
Isto tako možete jednostavno instalirajte laravel pomoću skladatelja na Windows. Nadam se da će vam ovaj vodič biti koristan. Podijelite ga u svom društvenom krugu ako vam se sviđa.