Aproape nici un site nu funcționează astăzi fără o conexiune la baza de date (DB). astfel încât să ne uităm și la modul de conectare la MySQL folosind php.
Crearea unei conexiuni la o bază de date pe PHP în mai multe moduri:
1) Mod vechi de modă veche de conectare la MySQL:
$ Conn = mysql_connect ($ db_hostname, $ db_username, $ DB_PASSWORD) sau die ( "Nu se poate conecta la server");
mysql_select_db ($ db_database, $ conn) sau mor ("Nu se poate conecta la baza de date");
- explicații la variabilele de mai jos.
Sunt utilizate următoarele funcții:
- mysql_connect () - pentru a vă conecta la server;
- mysql_select_db () - pentru a vă conecta la baza de date;
În același timp, verificăm constant o eroare în acest fel: sau mor ("Eroare de genul asta"); - este tradus ca sau mor cu o astfel de și o astfel de greșeală - pentru a găsi imediat unde este eroarea.
Exemplu de conectare la o bază de date pe php cu un eșantion din tabel
// variabile pentru conectarea la baza de date
$ gazdă = 'localhost'; / gazdă
$ username = 'root'; // parola pentru a vă conecta la baza de date
$ password = ''; // parola pentru a vă conecta la baza de date - poate avea o valoare liberă pe computerul local.
$ name_name = 'meu-dolgi'; // numele bazei de date
// mod vechi de conectare la baza de date
mysql_connect ($ host, $ username, $ password) sau mor ("Nu se poate conecta pentru a crea o conexiune");
// selectați baza de date. Dacă eroarea este
mysql_select_db ($ database_name) sau mor (mysql_error ());
// Rulați interogarea. Dacă eroarea este
$ result = mysql_query ('SELECT nume, bani din Dolg ORDER BY BONE DESC LIMIT 5') sau mor (mysql_error ());
ecou "Cui ar trebui să cobor:
„;
// Selectarea rezultatelor interogării
în timp ce ($ row = mysql_fetch_assoc ($ rezultat)) echo $ row ['Nume]. "cu o datorie". $ row ['Money']. „ruble.
„;
>
// eliberarea memoriei utilizate
mysql_free_result ($ rezultat);
// Închideți conexiunea
mysql_close ();
2) Stil mai procedural progresiv - conectare la baza de date folosind mysqli:
- mai convenabil;
- mai rapid de până la 40 de ori;
- securitate sporită;
- există noi caracteristici și funcții;
Exemplu de conectare la o bază de date pe php cu un eșantion din tabel
// Conectați-vă la baza de date
$ link = mysqli_connect ('localhost', 'username', 'parola', 'nume-bază de date'); // aici introduceți datele dvs. direct: numele de utilizator, parola și numele bazei de date, primul câmp este de obicei localhost
// eroare de conectare la ieșire
dacă (! $ link) echo "Eroare la conectarea la baza de date." Cod de eroare: ". mysqli_connect_error ();
ieșire;
>
Rețineți că mysqli este folosit peste tot. nu mysql.
// Rulați interogarea. Dacă eroarea este
dacă ($ rezultat = mysqli_query ($ link, 'SELECT nume, bani din Dolg ORDER BY BONE DESC LIMIT 5'))
ecou "Cui ar trebui să cobor:
„;
// Selectarea rezultatelor interogării
în timp ce ($ row = mysqli_fetch_assoc ($ rezultat)) echo $ row ['Nume']. "cu o datorie". $ row ['Money']. „ruble.
„;
>
// eliberarea memoriei utilizate
mysqli_free_result ($ rezultat);
După cum puteți vedea, unele puncte s-au schimbat (cu caractere italice).
3) Metodă orientată pe obiect de conectare la baza de date MySQL - folosind metode și clase:
Contra: mai dificil și mai puțin susceptibil la erori.
Pro: scurte și convenabile pentru programatori cu experiență.
$ conn = un nou mysqli ($ db_hostname, $ db_username, $ db_password, $ db_database);
dacă ($ conn-> connect_errno) mor ($ conn-> connect_error);
> altceva
aici, în principiu, totul este clar clar:
- $ db_hostname este gazda (cea mai mare parte localhost),
- $ db_database este numele bazei de date;
- $ db_username și $ db_password - nume de utilizator și parolă, respectiv!
Un exemplu de conexiune la o bază de date cu un stil OOP php cu o mostră din tabel
// Conectați-vă la baza de date
$ mysqli = mysqli noi ('localhost', 'username', 'password', 'name-database'); // aici introduceți datele dvs. direct: numele de utilizator, parola și numele bazei de date, primul câmp este de obicei localhost
// eroare de conectare la ieșire
dacă ($ mysqli-> connect_error) mor ('Eroare la conectarea la baza de date: ('. $ mysqli-> connect_errno. ')' mysqli_connect_error);
>
Rețineți că mysqli este folosit peste tot. nu mysql. și spre deosebire de metoda anterioară, există săgeți "->", care arată că acesta este stilul OOP.
// Rulați interogarea. Dacă eroarea este
dacă ($ rezultat = $ mysqli-> interogare ('SELECT Name, Money FROM Dolg ORDER BY BONE DESC LIMIT 5'))
ecou "Cui ar trebui să cobor:
„;
// Selectarea rezultatelor interogării
în timp ce ($ row = $ result-> fetch_assoc ()) echo $ row ['Nume]. "cu o datorie". $ row ['Money']. „ruble.
„;
>
// eliberarea memoriei utilizate
$ result-> close ();
Sarcina pentru tine este să găsești diferențe.
4) Comunicarea cu baza de date folosind DOP:
Când se conectează la baza de date MySQL, se folosesc expresii pregătite (prin metoda de pregătire) și, ca rezultat, se asigură o mai mare securitate și crește foarte mult viteza.
config din metoda precedentă! - la fel
// Stilul PDO pentru comunicarea cu MySQL
dacă ($ stmt = $ mysqli-> prepare ("SELECT Nume, Voney FROM Dolg ORDER BY Money" <. LIMIT 5"))
$ stmt-> bind_param ("i", $ suma);
$ summa = 100000;
// executați executarea
$ stmt-> execuție ();
ecou "Cui ar trebui să cobor:
„;
// Selectarea rezultatelor interogării
în timp ce ($ stmt-> fetch ()) echo $ col1. "cu o datorie". $ col2. „ruble.
„;
>
// eliberarea memoriei utilizate
$ stmt-> close ();
// Închideți conexiunea
$ mysqli-> close ();
După cum puteți vedea, aici este mult mai dificil și este necesar să studiem DOP - acesta este un subiect separat.