Php alap példák mysqli kiterjesztés

Alapvető példák terjeszkedés MySQLi

Ez a példa azt mutatja, hogyan kell csatlakoztatni, hajtsa végre a lekérdezést, hogy egy alapvető hiba kezelése, a kapott nyomtatási mintát és megszüntesse a MySQL adatbázis.

Ez a példa a szabadon hozzáférhető Sakila adatbázis, amely lehet terhelni »dev.mysql.com, az itt ismertetett módon. Annak érdekében, hogy ezt a példát működik (a) Telepítse sakila és (b) módosítsa a változók kapcsolódni az adatbázis (host, your_user, your_pass).

Example # 1 Panorámás például a munka a hosszabbító MySQLi

// Csatlakozás a MySQL adatbázis, és válassza ki az adatbázist nevű sakila
// Host: 127.0.0.1, felhasználónév: your_user, jelszó: your_pass, bázis: sakila
$ MySQLi = new mysqli (127.0.0.1 '' your_user 'your_pass' sakila ...);

// Ó, nem. connect_errno változó létezik, ami azt jelenti, hogy a kapcsolat nem volt sikeres!
if ($ mysqli -> connect_errno) // A kapcsolat létrehozása nem sikerült. Mit kell tenni ebben az esetben?
// küldhet levelet az igazgató, hogy az tükrözze a hiba a naplóban,
// tájékoztatja a felhasználót a hiba a képernyőn, stb
// Nem kell ebben az esetben, hogy felfedje a bizalmas információkat, ezért
// csak próbálja meg ezt:
echo „Sajnálom, nem volt probléma a helyszínen”;

// nem kell tenni a valódi helyén, de példaként fogjuk mutatni
// hogyan kell nyomtatni információt a részleteket MySQL hiba történt
echo „Hiba: udals létrehozni egy kapcsolatot a MySQL és itt van miért: \ n”;
echo "bugnumber". $ MySQLi -> connect_errno. "\ N";
echo "Hiba:". $ MySQLi -> connect_error. "\ N";

// Érdemes mutatni valami mást, de mi csak hagyjuk
exit;
>

// Execute SQL lekérdezés
$ Sql ​​= "SELECT actor_id, first_name, last_name FROM WHERE színész actor_id = $ támogatás";
if ($ result = $ mysqli -!> query ($ sql)) // Ó, nem! A kérés sikertelen.
echo „Sajnálom, nem volt probléma a munkaterületen.” ;

// egyszer, ne csináld egy igazi hely, de meg fogjuk mutatni ebben a példában,
// hogyan kap információt a hiba:
echo „Hiba: A kérés nem sikerült, és itt miért: \ n”;
echo "kérés". $ Sql. "\ N";
echo "bugnumber". $ MySQLi -> hibakod. "\ N";
echo "Hiba:". $ MySQLi -> hiba. "\ N";
exit;
>

// Hűha, megcsináltuk. Van egy kapcsolatot az adatbázis dannh és sikeres kérelmet.
// De hol az eredmény?
if ($ result -> NUM_ROWS === 0) // Hoppá! a kérelem nem egy sorban! Néha várható, és normális, néha nem.
// dönt. Ebben az esetben meg lehet actor_id volt túl nagy?
echo „Nem találtunk egyezést a $ támogatást. Sajnálom. Kérjük, próbálja újra.” ;
exit;
>

// Most csak annyit, hogy a lekérdezés eredményének létezik, úgyhogy
// töltsük be egy asszociatív tömböt, ahol a tömb kulcsait a nevei
// oszlopok.
$ Színész = $ result -> fetch_assoc ();
echo „Néha látok.” $ Actor [ 'first_name']. "". $ Actor [ 'last_name']. "A TV-ben." ;

// Most kirak öt random szereplők és abból nevüket a listára.
// Itt hozzá egy kisebb mértékű hibakezelés, hogy csináld magad
$ Sql ​​= "SELECT actor_id, first_name, last_name FROM színész ORDER BY rand () LIMIT 5";
if ($ result = $ mysqli -!> query ($ sql)) echo "Sajnálom, nem volt probléma a munkaterületen." ;
exit;
>

// kiírja, hogy megtalálja az öt véletlenszerűen kiválasztott szereplőkkel, és hozzon létre egy linket id
// mindegyikük
echo "

\ N „;

// A szkript automatikusan lezárja a kapcsolatot a MySQL és felszabadítja a memóriát még
// legalább csináljuk manuálisan
$ Eredmény -> free ();
$ MySQLi -> close ();
?>

Felhasználói megjegyzések jelenléte