PHP MySQL Eksempel på webapplikation (første projekt)

⚡ Smart opsummering

Din første PHP-webapplikation ved hjælp af MySQL forvandler en rå database til en brugbar grænseflade. Denne ressource forklarer, hvad PHP er, og hvorfor den parres med MySQL, hvordan man åbner en forbindelse, og hvordan Myflix vises for brugerne.

  • 🧩 Kernekoncept: PHP kører på webserveren, så klientmaskiner behøver kun en browser.
  • 💰 Hvorfor PHP: PHP er open source, cross-platform og leveres gratis med XAMPP.
  • 🔌 Forbindelsesmetoder: Brug mysqli_connect til procedurekode eller PDO til objektorienteret adgang.
  • ⚠️ Advarsel om udfasning: Den gamle mysql_connect-funktion blev fjernet i PHP 7 og må ikke bruges.
  • 🖥️ Anvendt resultat: Myflix-skærmene viser PHP, der skjuler SQL bag en grafisk brugerflade.

PHP MySQL Eksempel på webapplikation

Nu hvor Myflixdb, hvad er det næste?

Tillykke for din succesfulde gennemførelse af SQL-tutorial-serien.

Vi så på, hvordan vi kan designe en database fra bunden, den relationelle databasestyringssystemmodel blandt andet, MySQL som et databasestyringssystem og hvordan det implementerer SQL-sproget, hvilke værktøjer er tilgængelige for os at bruge i databasedesignfasen, SQL-udvikling og MySQL serveradministration som f.eks MySQL workbench og producerede endelig en arbejdsdatabase til et fiktivt videobibliotekssystem "Myflix".

Selvom du måske er begejstret for din nyerhvervede viden, har du så tænkt over, hvordan dine databasebrugere vil bruge din database?

Hvad med udviklingping en simpel webapplikation ved hjælp af PHP og MySQL der skjuler alle SQL-sætningerne indeni og giver en visuel grafisk brugergrænseflade, som brugerne kan bruge, når de interagerer med databasen?

Vi kan bruge PHP at oprette et eksempel på PHP-applikation med MySQL.

Hvad er PHP?

PHP er en generel scriptsprog på serversiden som vi kan bruge til at udvikle dynamiske websteder og applikationer. PHP behøver kun at være installeret på webserveren der vil være vært for webapplikationen og klientapplikationer kan adgang og serverressourcer via webbrowsere. Diagrammet vist nedenfor illustrerer den grundlæggende arkitektur for en PHP-webapplikation.

Hvad er PHP

PHP webapplikationsarkitektur

Hvorfor PHP?

Du har tydeligvis hørt om en række programmeringssprog derude; du undrer dig måske over, hvorfor vi skulle bruge PHP frem for andre sprog til at udvikle vores videobiblioteksapplikation? PHP ligesom MySQL is open source og gratis, behøver du ikke betale for at få PHP; alt du skal gøre er at downloade det. Pakker som f.eks XAMPP kommer allerede med en webserver, MySQL og PHP blandt andre. Dette er også utroligt gratis. Dette gør PHP til et omkostningseffektivt valg sammenlignet med andre scriptsprog såsom CFML eller ASP.

En anden fordel, du får med PHP, er, at det er en scriptsprog på serversiden; dette betyder, at du kun behøver at installere det på serveren, og klientcomputere, der anmoder om ressourcerne fra serveren, behøver ikke at have PHP installeret; kun en webbrowser ville være nok.

PHP har også i indbygget støtte til at arbejde hånd i hånd med MySQL; dette betyder ikke, at du ikke kan bruge PHP med andre databasestyringssystemer.

PHP er tværplatform hvilket betyder, at du kan implementere din applikation på en række forskellige operativsystemer såsom Windows, Linux, Mac OS osv.

PHP og MySQL

PHP og MySQL er som to forskellige sider af samme mønt. Ligesom MySQL har indbygget funktioner til datamanipulationer, så har PHP indbygget funktioner til at oprette forbindelse til MySQL server og manipulere dataene i databasen. Lad os nu se på nogle af PHP-funktioner, der tillader os at manipulere MySQL databaser

MySQL connect

// Procedural connection with the MySQLi extension
$dh = mysqli_connect("servername", "username", "password", "databasename");

HER

  • “mysqli_connect” er den indbyggede PHP-funktion til at oprette forbindelse til MySQL database
  • "servernavn" er navnet på den server, der kører MySQL serveren.
  • "brugernavn" er navnet på den bruger, som vi vil bruge til at autentificere os selv, når vi opretter forbindelse til serveren.
  • "adgangskode" er den adgangskode, som vi vil bruge til at autentificere os selv, når vi opretter forbindelse til serveren.
  • "Databasenavn" er den database, der skal vælges.

⚠️ Advarsel: den ældre mysql_connect Funktionen blev udfaset i PHP 5.5 og fjernet i PHP 7.0. Brug MySQLi or BOB i stedet.

PHP-dataobjekt [PDO]

Alternativt kan vi også bruge PHP Data Object PDO til at oprette forbindelse til MySQL server. Den har følgende grundlæggende syntaks.

$dbconn = new PDO("mysql:host=servername;dbname=databasename", "username", "password");

HER

  • "dbconn" er databaseforbindelsesobjektet, som vi kan bruge til at manipulere vores database.
  • "ny PDO (...)" opretter en forekomst af PDO-klassen.
  • "mysql:host=servernavn;" er navnet på den kørende server MySQL serveren.
  • "dbname=databasenavn" er navnet på databasen, der skal manipuleres fra PHP.
  • "brugernavn, adgangskode" er login-legitimationsoplysninger, vi vil bruge til at autentificere os selv.

Som du kan se fra ovenstående eksempler på PHP-eksempler på databaseforbindelser, er PHP ikke kun nemt at bruge, men det er også fleksibelt. Eksempeldiagrammet for PHP-webapplikationer vist nedenfor illustrerer, hvordan klientapplikationen, PHP-drevet webserver og MySQL interagere.

PHP og MySQL

Interaktion mellem PHP og MySQL

Introduktion af Myflix Video Library Application

Forudsat at vi har tilegnet os viden om PHP-sproget kombineret med det vi lige har lært i MySQL tutorial serien, kan vi skrive den webbaserede applikation i PHP, der kører oven på MySQL database for at give vores Myflix-databasebrugere en visuel grafisk brugergrænseflade til interaktioner.

Skærmbilleder af Myflix Videobibliotek

Skærmbilleder af PHP MySQL eksemplet nedenfor viser, hvordan videobiblioteksapplikationen, der kører oven på Myflixdb, ville se ud.

MyFlix Videobibliotek

Medlemslistevindue vist i ovenstående PHP med MySQL projekt. Hver række er en post, der er læst fra medlemstabellen.

MyFlix Videobibliotek

Vinduet til redigering af filmdetaljer vist ovenfor.

Ofte Stillede Spørgsmål

Vælg PDO. Den understøtter tolv databasedrivere, så den samme kode kan flyttes til en anden motor. MySQLjeg arbejder kun med MySQL.

Brug forberedte sætninger med bundne parametre. Brugerinput sendes separat fra forespørgselsteksten, så det kan aldrig udføres som SQL.

Ja. AI-assistenter kan scaffolde forbindelsesfiler, formularer og CRUD-sider fra et skema. RevSe outputtet, fordi genereret kode ofte udelader forberedte sætninger og fejlhåndtering.

Nej. AI accelererer skrivning af kode, men fejlfinding af en mislykket forbindelse eller et sikkerhedshul kræver stadig forståelse af de grundlæggende PHP- og SQL-principper.

Opsummer dette indlæg med: