Ce construim și de ce Laravel
Lectură estimată: 4 minute
Estimare pentru text, la un ritm de 180 de cuvinte pe minut. Timpul pentru analizarea codului, exerciții și proiecte se adaugă separat și depinde de ritmul tău.
Problema pe care o vei rezolva: Catalog Laravel cu administrare protejată
Proiect local Laravel 11: Service are title și price_cents; cererea de ofertă are email și service_id. Vizitatorul poate vedea catalogul, administratorul poate modifica servicii.
Rezultatul urmărit
Creează migrarea, modelul, rutele, Blade, Form Request și policy. Testează un service_id inexistent și un utilizator fără drept de editare.
Cum recunoști o soluție corectă
Prețul este stocat în unități întregi, iar afișarea îl formatează. ID-ul invalid nu creează cererea. Butonul ascuns în Blade nu înlocuiește controlul de acces pe server.
Parcurge lecțiile în ordine și păstrează exercițiile în registrul descărcabil. Ultima lecție include atelierul de 40 de minute în care combini conceptele și testezi o variație a situației inițiale. Exemplele comerciale sunt fictive; nu reprezintă rezultate ale unor clienți.
Laravel e cel mai folosit framework PHP. Îți dă o structură clară și unelte gata făcute pentru tot ce apare într-un site real: rutare, șabloane, bază de date, validare, autentificare, cozi, email. În loc să reinventezi aceste piese (cu bug-uri), le folosești pe cele testate de milioane de proiecte. În acest curs construim un site cu articole și o zonă de administrare.
De ce un framework
Fără framework, fiecare proiect PHP începe cu aceleași decizii: cum organizez fișierele, cum rutez cererile, cum mă conectez la baza de date, cum previn XSS și SQL injection. Un framework răspunde o dată la toate acestea, consecvent, iar tu te concentrezi pe ce e specific aplicației tale.
Ce vom construi
- O listă publică de articole și pagini individuale de articol.
- O zonă privată (autentificare) pentru administrare.
- Formulare de creare/editare cu validare.
- Publicare pe un server real, cu bază de date.
Concepte cheie Laravel
- Rută: leagă o adresă URL de un cod care o tratează.
- Controller: clasa care conține acel cod.
- Blade: motorul de șabloane pentru HTML.
- Eloquent: felul Laravel de a lucra cu baza de date, prin obiecte.
- Migrație: definiția schemei bazei de date, în cod versionat.
Ce presupune cursul
Cunoști PHP de bază (variabile, funcții, array-uri, clase), ai lucrat cu un formular și cu o bază de date măcar teoretic. Nu ai nevoie de experiență cu framework-uri.
Exercițiu
Notează, în cuvintele tale, ce înseamnă fiecare din cei 5 termeni: rută, controller, Blade, Eloquent, migrație. Vei reveni la lista asta la finalul cursului să vezi cât de mult s-a clarificat.
Greșeli frecvente
- Sari peste bazele PHP și te lupți cu sintaxa în loc de concepte.
- Încerci să memorezi API-ul Laravel în loc să înțelegi fluxul cerere → răspuns.
- Cauți „cum fac X" fără să înțelegi de ce framework-ul vrea să faci X într-un anume fel.
De reținut
- Un framework răspunde o dată la deciziile repetitive ale oricărui proiect.
- Laravel acoperă rutare, șabloane, bază de date, validare, auth, cozi, email.
- Concepte de bază: rută, controller, Blade, Eloquent, migrație.
- Construim un site cu articole și administrare.
Pe scurt
Laravel îți dă structură și piese testate. Cursul construiește un site real, de la instalare la deploy.
Contractul primului proiect Laravel
Primul site demonstrativ gestionează solicitări de service, nu plăți. Definește ce vede vizitatorul și ce vede operatorul înainte de instalare. Un proiect mic, complet, este mai util decât multe funcții începute. Folosește Laravel 11 pentru concordanța cu aplicația existentă și notează versiunea PHP; pentru un proiect nou, verifică separat suportul versiunii alese. Nu copia automat configurația unui curs într-un serviciu public.
Exemplu de lucru
Vizitator: listă servicii, formular, confirmare fără date sensibile.
Operator autentificat: listă cereri, detalii, schimbare status permisă.
Date: nume fictiv, email demo, serviciu, mesaj, status.
Criterii: validare server; acces operator; erori clare; test formular.
Exclus din primul proiect: plăți și trimitere reală de email.Interpretarea rezultatului
Această specificație permite verificarea proiectului fără servicii externe. HTTP 200 pe pagina principală nu dovedește că cererea este salvată sau că operatorul este autorizat. Păstrează o listă de acceptare și testează traseul vizitator–operator de la început la sfârșit.
Exercițiu de consolidare
Adaugă o cerință de ștergere și explică ce permisiune, confirmare și politică de păstrare ar deveni necesare.
Aplicație practică
Sarcina
Definește proiectul: catalog de servicii și formular de ofertă.
Rezolvare orientativă și verificare
Scrie trei rute, două modele și criteriile de acceptare. Exemplul este educațional, inspirat de tipuri de proiecte din portofoliu.
Greșeală de evitat
Nu pretinde că demonstrația reproduce codul privat al unui client.
Documentație și surse
- Documentația Laravel 11 — versiunea aplicației demonstrative — Laravel
- OWASP Top 10 — OWASP
Materiale pentru această lecție
Ți-a plăcut lecția? Continuă cursul complet
Ai citit o lecție gratuită. Celelalte lecții, aplicațiile practice și materialele se deblochează odată cu cursul.
249 lei
Plată unică, acces pe viață la toate cele 7 lecții.
Vezi ce conține cursul →