Otthon / Játékkonzolok / Csatlakozás mysql php-hez 5. Csatlakozás MySQL adatbázishoz. Progresszívebb eljárási stílus - csatlakozás az adatbázishoz mysqli használatával

Csatlakozás mysql php-hez 5. Csatlakozás MySQL adatbázishoz. Progresszívebb eljárási stílus - csatlakozás az adatbázishoz mysqli használatával

php használatával...

Adatbázis-kapcsolat létrehozása PHP-ben különböző módokon:

1) a MySQL-hez való csatlakozás régimódi módja:

$conn=mysql_connect($db_hostname, $db_username, $db_password) vagy die ("Nincs kapcsolat a szerverrel");
mysql_select_db($db_database,$conn) or die ("Nem, nem lehetett csatlakozni az adatbázishoz");

A változók magyarázata alább.

A következő funkciókat használják:

  • mysql_connect()- csatlakozni a szerverhez;
  • mysql_select_db()- csatlakozni az adatbázishoz;

Ugyanakkor folyamatosan ilyen módon ellenőrizzük a hibákat: or die ("A hiba ilyen és olyan"); - lefordítva vagy meghalni ilyen-olyan hibával - hogy azonnal megtalálják, hol a hiba.

config.php

// változók az adatbázishoz való csatlakozáshoz
$host = "localhost"; /házigazda
$felhasználónév = "root"; // jelszó az adatbázishoz való csatlakozáshoz
$jelszó = ""; // jelszó az adatbázishoz való csatlakozáshoz - be helyi számítógépüres értéke lehet.
$adatbázis_neve = "saját-dolgi"; // adatbázis neve

// régi módja az adatbázishoz való kapcsolódásnak
mysql_connect($host, $felhasználónév, $jelszó) or die("Nem lehet csatlakozni kapcsolat létrehozása");

// válassza ki az adatbázist. Ha hiba van, adja ki
mysql_select_db($adatbázis_neve) vagy die(mysql_error());

index.php

request_once "config.php";


$result = mysql_query("SELECT Név, Pénz FROM Dolgból ORDER BY Money DESC LIMIT 5") or die(mysql_error());



";


while ($sor = mysql_fetch_assoc($eredmény)) (
";
}


mysql_free_result($eredmény);

// Zárja be a kapcsolatot
mysql_close();

2) Progresszívebb eljárási stílus - csatlakozás az adatbázishoz mysqli használatával:

Ez a módszer:

  1. kényelmesebb;
  2. akár 40-szer gyorsabb;
  3. fokozott biztonság;
  4. új szolgáltatások és funkciók vannak;

Példa egy adatbázishoz való csatlakozásra PHP-ben egy táblázatból történő kijelöléssel

config.php

// kapcsolatok az adatbázishoz
$link = mysqli_connect("localhost", "felhasználónév", "jelszó", "név-adatbázis"); // itt közvetlenül megadjuk az adatait: felhasználónév, jelszó és adatbázisnév, az első mező általában localhost

// kimeneti csatlakozási hiba
if (!$link) (
echo "Hiba az adatbázishoz való csatlakozáskor. Hibakód: " . mysqli_connect_error();
kijárat;
}

Figyelem - mysqli-t használnak mindenhol, nem mysql-t!!!

index.php

request_once "config.php";

// Hajtsa végre a kérést. Ha hiba van, megjelenítjük
if ($eredmény = mysqli_query($link,"VÁLASZTÁSA Név, Pénz az adósságból ORDER BY Money DESC LIMIT 5")) (

Echo "Kinek tartozom csökkenő sorrendben:

";

// Lekérdezés eredményeinek lekérése
while ($sor = mysqli_fetch_assoc($eredmény)) (
echo $row["Név"] . "tartozással". $row["Pénz"] . "rubelt.
";
}

// használt memória felszabadítása
mysqli_free_result($eredmény);

// Zárja be a kapcsolatot
mysqli_close($link);
}

Mint látható, néhány pont megváltozott (dőlt betűvel).

3) Objektum-orientált módszer a MySQL adatbázishoz való csatlakozáshoz - metódusok és osztályok használatával:

Hátrányok: Bonyolultabb és kevésbé érzékeny a hibákra.

Előnyök: rövidség és kényelem a tapasztalt programozók számára.

$conn = new mysqli($db_gazdanév, $db_felhasználónév, $db_jelszó, $db_adatbázis);
if($conn->connect_errno)(
die($conn->connect_error);
) else (echo "Az adatbázishoz való kapcsolat sikeresen létrejött";)

itt elvileg minden intuitív:

  • $db_hostname van házigazda(többnyire localhost),
  • $db_adatbázis - db név;
  • $db_username és $db_password - felhasználónév és jelszó rendre!

Példa adatbázishoz való csatlakozásra php OOP stílusban, táblázatból való mintavételezéssel

config.php

// kapcsolatok az adatbázishoz
$mysqli = new mysqli("localhost", "felhasználónév", "jelszó", "név-adatbázis"); // itt közvetlenül megadjuk az adatait: felhasználónév, jelszó és adatbázisnév, az első mező általában localhost

// kimeneti csatlakozási hiba
if ($mysqli->connect_error) (
die ("DB kapcsolódási hiba: (" . $mysqli->connect_errno . ") " . mysqli_connect_error) ;
}

Figyelem, a mysqli-t mindenhol használják, nem a mysql-t!!! és az előző módszerrel ellentétben megjelennek a „->” nyilak, amelyek azt jelzik, hogy ez egy OOP stílus.

index.php

request_once "config.php";

// Hajtsa végre a kérést. Ha hiba van, megjelenítjük
if ($eredmény = $ mysqli-> lekérdezés("VÁLASZTÁSA Név, Pénz az adósságból ORDER BY Money DESC LIMIT 5")) (

Echo "Kinek tartozom csökkenő sorrendben:

";

// Lekérdezés eredményeinek lekérése
while ($sor = $eredmény-> fetch_assoc()) {
echo $row["Név"] . "tartozással". $row["Pénz"] . "rubelt.
";
}

// használt memória felszabadítása
$eredmény->bezárás();

// Zárja be a kapcsolatot
$mysqli-> bezár();
}

Az Ön feladata, hogy megtalálja a különbségeket.

4) Kommunikáció az adatbázissal OEM használatával:

Amikor MySQL adatbázishoz csatlakozunk, előkészített kifejezéseket használunk (a előkészítő módszerrel), aminek eredményeként nagyobb biztonság és nagymértékben nő a teljesítmény.

konfigurációs fájl az előző módszerből! - ugyanaz

index.php

// PDO stílus a MySQL-lel való kommunikációhoz
if ($stmt = $mysqli->prepare("SELECT Név, Voney FROM Dolg ORDER BY Money< ? LIMIT 5")) {

$stmt->bind_param("i", $summa);
$summa = 100000;

//végrehajtás indítása
$stmt->execute();

// Változók deklarálása előkészített értékekhez
$stmt->bind_result($col1, $col2);

Echo "Kinek tartozom csökkenő sorrendben:

";

// Lekérdezés eredményeinek lekérése
while ($stmt->fetch()) (
echo $col1 . "tartozással". $col2 . "rubelt.
";
}

// használt memória felszabadítása
$stmt->close();

// Zárja be a kapcsolatot
$mysqli->close();

Amint látja, ez sokkal bonyolultabb, és tanulmányoznia kell az OEM - ez egy külön téma.

Ebben a mai cikkben az adatbázisokkal való kapcsolat létrehozásáról fogunk beszélni, és megvitatjuk, hogy melyik opciót érdemesebb eljárási vagy objektumorientált használni. Először is nézzük meg, hogy milyen szinten állunk, ha ez egy teljesen kezdő szint, akkor kivétel nélkül azt tanácsolom, hogy kezdjük el az adatbázishoz való csatlakozás procedurális stílusát használni. Korábban írtam egy cikket erről a témáról a blogomban, ha többet szeretne megtudni az adatbázishoz való csatlakozás eljárási stílusáról, olvassa el a következő cikket: „Hogyan kapcsolódjunk a MySQL-hez PHP segítségével”. Ha már van némi tapasztalata az adatbázishoz való kapcsolódás eljárási stílusával kapcsolatban, akkor valószínűleg Ön is, mint én, most vette át a projektjeimet, és objektum-orientált megközelítés alkalmazására kényszerítette őket.

Így vagy úgy, most megnézzük egy osztály létrehozásának lépéseit, hogy kapcsolatot hozzon létre egy MySQL adatbázissal. PHP nyelv. Két PHP fájlra lesz szükségünk, az egyik fájlba „betesszük” az adatbázis-kapcsolat létrehozásához szükséges osztályt, a másikba pedig ezzel az osztállyal fogunk dolgozni.

Hozzunk létre két fájlt:

  • index.php;
  • adatbázis.osztály.php;

Azt hiszem, már nem vagyunk kisgyerekek, és tudjuk, mire van szükségünk a PHP fájlokkal való munkához. A telepített webszerver Apache, PHP, MySQL DBMS és tudja, hova kell ezeket a fájlokat elhelyezni - (azoknak, akik nem ismerik vagy elfelejtették).

A fájlt, amiben az osztály van tárolva, egy külön fájlba teszem és a következő formátumban nevezem el: osztálynév.osztály.php és tudom, hogy mi van ebben a fájlban. Ha sok osztály van egy projektben, eltévedhet, ezért azt javaslom, hogy a fájlokat osztályokkal nevezze el a fent leírt formátumban.

Database.class.php fájl:

Most nézzük meg, mi jött létre ebben a lépésben. A "class" kulcsszó, az osztálynév - DataBase és a kapcsos zárójelek felhasználásával létrehoztuk az osztály törzsét. A létrehozott osztályban két tulajdonságot hoztunk létre, a $mConnect-ben - ahol az adatbázishoz való kapcsolódás eredménye és a $mSelectDB-ben - ahol az adatbázis kiválasztásának eredménye tárolódik. Lehet, hogy észrevette a kulcsszavakat minden ingatlanban – nyilvános és statikus. miről beszélnek? Nyilvános azt jelenti, hogy a tulajdonság elérhető az osztályon kívülről, a static pedig lehetővé teszi a tulajdonság elérését vagy felhívását anélkül, hogy az osztályból példányt hozna létre, ami nagyon gyakran kényelmes a munkában.

Adjuk hozzá a Connect() metódust az adatbázishoz való kapcsolat létrehozásához:

".mysql_error()."

"; exit(); return false; ) // Az eredmény visszaadása return self::$mConnect; ) ) ?>

  • $host - szerver IP-címe, helyi PC-n localhost;
  • user - adatbázis felhasználónév;
  • $pass - adatbázis felhasználói jelszó;
  • $name - annak az adatbázisnak a neve, amelyhez csatlakozunk;

A mysql_connect() függvény kapcsolatot hoz létre az adatbázissal, és a végrehajtás eredményét a $mConnect mappában tárolja. Ezután jön az IF konstrukció ellenőrzése: Ha a kapcsolat nem volt sikeres, jelenítsen meg egy hibaüzenetet... Ellenkező esetben a PHP figyelmen kívül hagyja az IF blokkot, és továbblép az adatbázis kiválasztásához. A mysql_select_db() függvény kiválasztja az adatbázis nevét, ha a kért adatbázis nem létezik az adatbázisban, ebben az esetben a program hibáról értesíti a felhasználót. Ha minden sikeres, az adatbázis-kapcsolat visszatér.

Adja hozzá a Close() metódust:

Sajnáljuk, nem tudtunk csatlakozni a MySQL szerverhez

"; exit(); return false; ) // Próbáljon meg kiválasztani egy saját adatbázist::$mSelectDB = mysql_select_db($name, self::$mConnect); // Ha az adatbázis nincs kiválasztva, hibaüzenetet jelenítsen meg. if( !self::$mSelectDB) ( echo "

".mysql_error()."

"; exit(); return false; ) // Az eredmény visszaadása return self::$mConnect; ) // A metódus lezárja a kapcsolatot az adatbázissal nyilvános statikus függvény Close() ( // Az eredményt adja vissza mysql_close(self: :$mConnect) ; ) ) ?>

Az osztály következő és utolsó metódusa, a Close() lezárja a kapcsolatot az adatbázissal a mysql_close() függvény bezárja a kapcsolatot a MySQL szerverrel, és visszaadja az eredményt.

Index.php fájl:

A define() függvény segítségével konstansokat hoztunk létre az adatbázis-kapcsolat paramétereinek tárolására. A Require_once tartalmazza a DataBase osztályunkat az index.php fájlban.

Emlékezzünk arra a statikus kulcsszóra, amelyet a DataBase osztályban használtunk ennek az osztálynak a tulajdonságaiban és metódusaiban. Ez lehetővé teszi számunkra, hogy hozzáférjünk az osztálytulajdonságokhoz és metódusokhoz a "::" (két kettőspont) használatával. A DataBase::Connect(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_DATABASE) metódus 4 paramétert vesz fel - a define() függvény által létrehozott konstansokat, amelyek információkat tárolnak az adatbázishoz való csatlakozásról. Ha a kapcsolat sikeres, a Connect() metódus visszaad nekünk egy adatbázis-kapcsolatot. Ezután már dolgozhatunk és lekérdezéseket hajthatunk végre az adatbázisban. mysql_query() függvény – lekérdezést hajt végre az adatbázisban. A mysql_fetch_assoc() függvény egy sor lekérdezési eredményt dolgoz fel, és egy asszociatív tömböt ad vissza. Az echo konstrukció a MySQL szerver verzióját jeleníti meg. Végül pedig a DataBase::Close() metódus lezárja az adatbázishoz való kapcsolatot.

A kérdés nagyon népszerű a kezdők körében, és helytelen lenne nem szentelni ennek külön cikket. Hogyan hozzunk létre adatbázis-kapcsolatot PHP-vel? mindjárt megmondom PHP eszközök elég az adatbázisokkal való teljes értékű munkához és a MySQL-lel való interakcióhoz. Most pedig próbáljunk csatlakozni!

Mi kell a PHP és a MySQL összekapcsolásához?

1. Telepítette a DBMS-t és létrehozta a működő adatbázist. Például a MySQL-ben (Mi az a DBMS és a MySQL?).
2. fiók megfelelő jogosultságokkal rendelkező MySQL-felhasználó (Mik azok a jogok és kiváltságok a MySQL-ben?)
3. Ennek megfelelően egy szerver PHP-vel

Ha nem hajtja végre a fenti lépések egyikét, nem tud csatlakozni.

Algoritmus a PHP és a MySQL közötti interakcióhoz

1. Csatlakozás az adatbázishoz
2. Kérelem küldése és az eredmény kézhezvétele
3. (Preferált) A kapcsolat lezárása

Most PHP segítségével csatlakozunk az adatbázishoz:

PHP kód

$db = mysql_connect("localhost", "Admin", "pass"); // felhasználói adatok
mysql_select_db("alapnév",$db); // válassza ki, hogy melyik adatbázishoz csatlakozzon
?>
Mint látható, négy paraméter van megadva a csatlakozáshoz:

1. Gazdanév. Sok esetben elég a localhost megadása (ugyanazon a tárhelyen).
2. A MySQL használatára regisztrált felhasználó neve.
3. A MySQL használatához regisztrált felhasználó jelszava.
4. Annak az adatbázisnak a neve, amelyhez csatlakozni szeretnénk. Ennek megfelelően az általunk megadott felhasználónak rendelkeznie kell jogosultsággal az adatbázisban való munkavégzésre.

Ennek eredményeként, ha valamit hibásan jeleznek, akkor semmi bűncselekmény nem történik, de valószínűleg hibát fog látni. De legyünk optimisták, mondjuk mindent helyesen adott meg.

Egy másik típusú kapcsolat:

PHP kód

$host="localhost"; /*házigazda*/
$user="admin"; /*Felhasználónév*/
$password="12345"; /*Felhasználói jelszó*/
$db="alapnév"; /*Adatbázis neve*/

Mysql_connect($host, $felhasználó, $jelszó); /*Csatlakozás a szerverhez*/
mysql_select_db($db); /*Csatlakozás a szerveren lévő adatbázishoz*/
?>
Itt vizuálisan létrehozok változókat példaadatokkal a felhasználó és a gazdagép számára, majd létrehozok egy kapcsolatot.

Hogyan lehet megszakítani (bezárni) egy kapcsolatot egy adatbázissal PHP-ben?

Vannak esetek, amikor a csatlakozási információ helytelenül van megadva. Ebben az esetben a szkript folytatja a feldolgozást PHP fájlés bizonyos számú hibát és figyelmeztetést jelenít meg az oldalon. Ilyen esetekben azt javaslom, hogy használjon hibakezelőt az adatbázishoz való csatlakozáskor. Ha a kapcsolat sikertelen, figyelmeztetést kap, amely megmondja, hogy melyik szakaszban van a probléma:

PHP kód

$user="admin";
$password="12345";
$db="alapnév";

// ha hiba történt
mysql_connect($host, $user, $password) or die("A MySQL szerver nem elérhető!".mysql_error());
mysql_select_db($db) or die("Nincs kapcsolat az adatbázissal."mysql_error());
?>
Nagyon fontos az is, hogy a forgatókönyv fejlesztése leálljon, ami sok hibás adattól kíméli meg Önt.

Gratulálok! Most már tudja, hogyan csatlakozhat egy adatbázishoz PHP-ben, és zárja be a kapcsolatot!

Köszönöm a figyelmet!

3 módszer a MySQL-hez való csatlakozáshoz PHP-vel, kódpéldákkal


A MySQL adatbázis használatának megkezdéséhez először meg kell értenie, hogyan csatlakozhat egyéni PHP programjából (script) ehhez a MySQL adatbázishoz.

Ez a cikk a következő három módszert írja le, valamint a megfelelő PHP kódpéldákat, amelyek elmagyarázzák, hogyan lehet csatlakozni az adatbázishoz PHP-ből.

Az összes alábbi példa esetében egy meglévő MySQL adatbázishoz fogunk kapcsolódni. Megjegyzés: Az itt leírtak a MariaDB-vel is működni fognak, akárcsak a MySQL.

1. Csatlakozzon a PHP-hez a mysqli kiterjesztéssel
*A mysqli azt jelenti, hogy MySQL javított

Hozza létre a következő mysqli.php fájlt

connect_error) ( die("Hiba: nem lehet csatlakozni: " . $conn->connect_error); ) echo "Csatlakozva az adatbázishoz.
"; $eredmény = $conn->query("SELECT id FROM goroda"); echo "Sorok száma: $eredmény->sorok száma"; $result->close(); $conn->close(); ?> A fenti kódban:

  • mysqli – Ez a függvény új kapcsolatot kezdeményez a mysqli kiterjesztéssel. A függvénynek négy argumentuma van:
    1. A localhost annak a gazdagépnek a neve, amelyen a MySQL adatbázis fut
    2. név – MySQL felhasználónév a csatlakozáshoz
    3. pass - jelszó a mysql felhasználó számára
    4. db - MySQL adatbázis, amelyhez csatlakozni kell.
  • A qvery egy MySQL lekérdező függvény. Ebben a példában az id oszlopot választjuk ki a városi adatbázisból.
  • Végül megmutatjuk a kiválasztott sorok számát a sorszám_szám változó segítségével az eredményben. Az eredményt és a kapcsolódási változót is bezárjuk a fentiek szerint.
Amikor meghívja a fenti mysqli.php fájlt a böngészőből, a következő kimenetet fogja látni, amely azt jelzi, hogy a PHP képes volt csatlakozni a MySQL adatbázishoz és lekérni az adatokat.

Csatlakozva az adatbázishoz. Sorok száma: 6 2. Csatlakozás a PHP MySQL PDO kiterjesztésből
*A PDO a PHP Data Objects rövidítése

A PDO_MYSQL illesztőprogram a PHP által biztosított PDO interfészt valósítja meg a PHP szkriptből a MySQL adatbázishoz való csatlakozáshoz.

Hozza létre a következő mysql-pdo.php fájlt:

setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Csatlakoztatva az adatbázishoz.
"; $sql = "VÁLASZTÁS IDŐT A gorodából"; nyomtatás "Az azonosítók listája:
"; foreach ($conn->query($sql) mint $row) ( print $row["id"] . "

  • "; ) $conn = null; ) catch(PDOException $err) ( echo "Hiba: Nem lehet csatlakozni: " . $err->getMessage(); ) ?> A fentiekben:
    1. new PDO - létrehoz egy új PDO objektumot, amely a következő három argumentumot veszi fel:
    2. mysql connect string: „mysql:host=localhost;dbname=db” formátumban lesz. A fenti példában a db localhoston fut, és mi csatlakozunk a db adatbázishoz.
    3. MySQL felhasználónév a csatlakozáshoz
  • Mysql felhasználói jelszó
  • $sql változó - hozza létre a végrehajtani kívánt sql lekérdezést. Ebben a példában kiválasztjuk az id oszlopot a városok táblázatából.
  • query($sql). Itt végrehajtjuk az imént létrehozott sql lekérdezést.
  • foreach. Itt iteráljuk a fenti lekérdezési parancs eredményét, és tároljuk a $row változóban, majd echo segítségével kiadjuk.
A MySQL PDO-ban a kapcsolat lezárásához egyszerűen állítsa a $conn változót nullra.

Amikor meghívja a fenti mysqli.php szkriptet a böngészőből, a következő sorokat fogja látni; ez azt jelenti, hogy a PHP képes volt csatlakozni a MySQL adatbázishoz és lekérni az információkat: Csatlakozva az adatbázishoz. Listaazonosító: 1 2 3 4 5 6

3. Csatlakozás PHP-ről elavult mysql függvényekkel Ezt a módszert csak akkor használja, ha többet használ régi verzió PHP és valamiért nem tudod frissíteniúj verzió

Ez a kiterjesztés a PHP 5.5 óta elavult. De a PHP 7.0-tól kezdve ez nem is működik, mivel eltávolították. A PHP 5.5 óta, amikor ezeket a függvényeket használja, E_DEPRECATED hibát generál.

Hozzon létre egy mysql.php fájlt:

"; $eredmény = mysql_query("SELECT ID FROM goroda"); $row = mysql_fetch_row($result); echo "id 1: ", $row, "
\n"; mysql_close($conn); ?> A fentiekben:

  • A mysql_connect függvénynek három argumentuma van:
    1. annak a gazdagépnek a neve, ahol a MySQL adatbázis fut;
    2. MySQL felhasználónév a csatlakozáshoz;
    3. mysql felhasználó jelszava. Itt csatlakozik a MySQL adatbázishoz, amely a helyi szerveren fut a felhasználónév és a jelszó használatával.
  • mysql_select_db függvény. Ahogy a neve is sugallja, kiválasztja azt az adatbázist, amelyhez csatlakozni kíván. Egyenértékű a "use" paranccsal. Ebben a példában egy db adatbázishoz csatlakozunk.
  • mysql_query függvény – a MySQL lekérdezés megadására szolgál. Ebben a példában az id oszlopot választjuk ki a városi adatbázisból.
  • mysql_fetch_row. Ezzel a funkcióval sorokat vonhat ki az imént létrehozott SQL-lekérdezésből.
  • Végül zárja be a kapcsolatot a mysql_close paranccsal a fentiek szerint.
Amikor meghívja a fenti mysql-legacy.php fájlt a böngészőből, a következő kimenetet fogja látni, amely azt jelzi, hogy a PHP képes volt csatlakozni a MySQL adatbázishoz és lekérni az információkat:

Csatlakozva az adatbázishoz. id 1: 1 Így csatlakozhat a MySQL-hez. Ismétlem, jobb az első két módszert használni; O

Annak érdekében, hogy a legtöbbet hozza ki MySQL adatbázisából, fontos megértenie, hogyan kapcsolódhat egy egyéni PHP programból egy MySQL adatbázishoz.

Ez az oktatóanyag a következő három módszert írja le, valamint egy megfelelő PHP-példaprogramot, amely elmagyarázza, hogyan lehet PHP használatával kapcsolódni egy adatbázishoz.

  • Csatlakozás Mysqli bővítménnyel (ajánlott)
  • Csatlakozás OEM használatával (ajánlott)
  • Csatlakozás hagyományos, örökölt mysql_ függvényekkel (elavult)

Ehhez telepítenie kell a PHP-MySQL csomagot.

A RedHat disztribúciója alapján, beleértve a , használja a yum-ot a PHP-MySQL telepítéséhez az alábbiak szerint.

Yum telepítsd a php-mysql-t

Az Ön rendszerétől függően a következő függőségeket telepítjük vagy frissítjük fent:

  • php-cli
  • php-common
  • php-pdo
  • php-pgsql

Miután minden telepítve van, a phpinfo oldalon megjelenik a MySQL modul az alábbiak szerint:

Az alábbi példák mindegyikénél egy már létező MySQL adatbázishoz fogunk kapcsolódni. Ha még nem ismeri a MySQL-t, ez egy jó kiindulópont: .

Megjegyzés: Az itt leírtak a MariaDB-vel is működni fognak, ugyanúgy, mint a MySQL-nél.

1. Csatlakozás PHP-ben a Mysqli kiterjesztéssel

A MySQLi a MySQL Improved rövidítése.

Kérjük, vegye figyelembe, hogy a legtöbb disztribúción (pl.: CentOS) a PHP-MySQLi már része a PHP-MySQL csomagnak. Így nem kell megkeresni és telepíteni a PHP-MySQLi csomagot. Mindössze annyit kell tennie, hogy telepíti a PHP-MySQL csomagot, hogy működő Mysqli bővítményt kapjon a rendszerén.

Hozza létre a következő mysqli.php fájlt az Apache DocumentRoot alkalmazásában:

connect_error) ( die("Hiba: Nem lehet csatlakozni: " . $conn->connect_error); ) echo "Kapcsolódás az adatbázishoz.
"; $eredmény = $conn->query("SELECT név A munkavállalótól"); echo "Sorok száma: $eredmény->sorok száma"; $result->close(); $conn->close(); ?>

A fentiekben:

  • MySQLi – Ez a funkció új kapcsolatot kezdeményez a MySQL kiterjesztéssel. Ennek a függvénynek négy argumentuma van:
    1. Gazdanév, ahol a MySQL adatbázis fut
    2. Felhasználónév a MySQL kapcsolathoz
    3. MySQL felhasználónév a csatlakozáshoz
    4. MySQL adatbázis, amelyhez csatlakozni kell.
  • Lekérdezési funkció – Ezzel adhatja meg a MySQL-lekérdezést. Ebben a példában a név oszlopot választjuk ki az alkalmazotti adatbázisból.
  • Végül megjelenítjük a kiválasztott sorok számát a num_rows változó segítségével. A fent látható módon lezárjuk a kapcsolatot is.

Csatlakozzon az adatbázishoz. Sorok száma: 4

Megjegyzés: Ha egy távoli MySQL-adatbázishoz próbál csatlakozni, akkor ezt megteheti, hogy elkerülje a hosztkapcsolat megtagadva hibaüzenetet: Hogyan lehet engedélyezni egy MySQL-ügyfél számára, hogy csatlakozzon egy távoli MySQL-kiszolgálóhoz.

2. Csatlakozás PHP használatával MySQL-hez PDO kiterjesztéssel

A PDO a PHP Data Objects rövidítése.

A PDO_MYSQL a PHP által biztosított PDO interfészt valósítja meg a program MySQL adatbázishoz való csatlakoztatásához.

A legtöbb Linux-disztribúción (mint például a CentOS és a RedHat) a PHP-PDO csomag már benne van a PHP-MySQL csomagban. Így nem kell megkeresni és telepíteni a PHP-PDO csomagot. Mindössze annyit kell tennie, hogy telepíti a PHP-MySQL csomagot, hogy működő PDO_MYSQL PHP kiterjesztést kapjon a rendszerén.

Hozza létre a következő MySQL-pdo.php fájlt az Apache DocumentRoot-ban:

setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Csatlakozás az adatbázishoz.
"; foreach ($conn->query($sql) mint $sor) ( print $row["név"] . "
"; ) $conn = null; ) catch(PDOException $err) ( echo "Hiba: Nem lehet csatlakozni: " . $err->getMessage(); ) ?>

A fentiekben:

  • new PDO – Létrehoz egy új PDO objektumot, amely a következő három argumentumot veszi fel:
    1. MySQL kapcsolati karakterlánc: „mysql:host=$hostname;dbname=$dbname” formátumban lesz. A fenti példában az adatbázis localhoston fut, és csatlakozunk az andreyex adatbázishoz.
    2. Felhasználónév a MySQL-hez való csatlakozáshoz.
    3. Jelszó mysql felhasználó számára.
  • $sql változó – létrehozás SQL lekérdezés amelyet végrehajtani szeretne. Ebben a példában kiválasztjuk a név oszlopot az alkalmazottak táblájából.
  • query($sql) – itt végrehajtjuk az imént létrehozott SQL lekérdezést.
  • foreach - itt végigfutjuk a fenti parancsokat, és elmentjük őket változó karakterlánc$, majd megmutatjuk őket a print paranccsal.
  • A MySQL PDO-ban a kapcsolat lezárásához egyszerűen állítsa vissza a $conn változót nullára.

Amikor meghívja a mysqli.php fájlt a böngészőből, a következő kimenetet fogja látni, jelezve, hogy a PHP képes volt csatlakozni a MySQL adatbázishoz és lekérni az adatokat.

Csatlakozzon az adatbázishoz. Alkalmazott neve: siteslan Maria Oleg

3. Csatlakozás PHP-ben mysql_ függvényekkel (elavult)

Ezt a módszert csak akkor használja, ha a PHP régebbi verzióját használja, és valamilyen okból nem tud frissíteni az új verzióra.

Ez egy örökölt PHP 5.5 kiterjesztés. De a PHP 7.0-s verziójától kezdve ez nem fog működni, mivel eltávolították.

A PHP 5.5-től kezdve, amikor ezeket a függvényeket használja, E_DEPRECATED hibát generálnak.

Hozza létre a következő MySQL-legacy.php fájlt az Apache DocumentRoot alatt:

"; $result = mysql_query("VÁLASZTÁS NEVE AZ alkalmazotttól"); $row = mysql_fetch_row($result); echo "1. alkalmazott: ", $sor, "
\n"; mysql_close($conn); ?>

A fentiekben:

  • A mysql_connect függvénynek három argumentuma van: 1) a gazdagépnév, ahol a MySQL adatbázis fut, 2) a MySQL-hez való csatlakozáshoz használt felhasználónév, 3) a MySQL felhasználó jelszava. Itt a root felhasználónévvel és annak jelszavával csatlakozunk a helyi szerveren futó MySQL adatbázishoz.
  • mysql_select_db függvény – Ahogy a neve is sugallja, kiválasztja azt az adatbázist, amelyhez csatlakozni szeretne. Ez egyenértékű a "use" paranccsal. Ebben a példában az andreyex adatbázishoz kapcsolódunk.
  • mysql_query függvény – Ezzel adhatja meg a MySQL-lekérdezést. Ebben a példában a név oszlopot választjuk ki az alkalmazotti adatbázisból.
  • mysql_fetch_row – Ezzel a funkcióval sorokat kérhet le az imént létrehozott SQL-lekérdezésből.
  • Végül zárja le a kapcsolatot a mysql_close paranccsal, a fent látható módon.

Amikor meghívja a MySQL-legacy.php fájlt a böngészőből, a következő kimenetet fogja látni, amely azt jelzi, hogy a PHP képes volt csatlakozni a MySQL adatbázishoz és lekérni az adatokat.

Csatlakozzon az adatbázishoz. 1. alkalmazott: AndreyEx