Mezi jednu z největších výhod databází patří to, že k datům v nich uloženým lze přistupovat z mnoha různých aplikací. PHP nabízí funkce, které umožňují spolupráci s několika databázovými servery. Nechybí mezi nimi samozřejmě ani MySQL.
Princip práce s databází v PHP skriptech je velice jednoduchý. Skládá se z několika kroků:
Připojení k databázi – vybereme si, ke kterému serveru se chceme připojit, a určíme jméno a heslo, pod kterým se chceme přihlásit.
Zpracování výsledku – server nám vrátí výsledek předchozího SQL příkazu. Pokud jsme posílali příkaz SELECT, můžeme postupně získat a zpracovat jednotlivé řádky výsledku – například je vytisknout jako součást wapové stránky.
Připojení k MySQL databázi je velice jednoduché. Slouží k tomu funkce MySQL_PConnect():
MySQL_PConnect("localhost", "jmeno", "heslo");
Prvním parametrem funkce je adresa počítače, na kterém běží databáze. Většina web-hostingů má databázový server spuštěný na stejném počítači jako webový server, a stačí proto uvést název localhost. Další dva parametry jsou jméno a heslo, které nám pro přístup k databázi přidělil její správce.
Po úspěšném připojení k databázi si musíme vybrat konkrétní databázi, se kterou budeme pracovat. Její jméno nám opět sdělí správce serveru:
MySQL_Select_DB("nazev_databaze");
Pro samotné zaslání SQL příkazů slouží funkce MySQL_Query(). Jako její parametr se předává SQL příkaz. Funkce nám vrátí hodnotu, která nám umožňuje s výsledkem dále pracovat (při příkazu SELECT). Pro ostatní příkazy nám vrací logickou hodnotu, která odpovídá úspěšnosti/neúspěšnosti provedení dané operace.
Pokud si chcete vše vyzkoušet, můžete využít některou ze zdarma dostupných web-hostingových služeb. My jsme minule využívali služby serveru yo.cz. Správce tohoto serveru můžete požádat o zřízení přístupu do databáze. Název databáze je shodný s vaším uživatelským jménem, jméno a heslo je stejné jako u FTP přístupu pro nahrávání stránek. V následujících ukázkách budu používat mé uživatelské jméno jkj. Ve vašich skriptech místo něj musíte použít své jméno.
Yo.cz nenabízí možnost vzdáleného přihlášení k databázi a proto musíme i tabulku vytvořit pomocí PHP skriptu (příklad 1). Skript pomocí protokolu FTP nahrajeme k našim ostatním skriptům a spustíme jej z webového prohlížeče – tj. zadáme adresu http://www.yo.cz/pages/jkj/create.php.
Příklad 1. Zaslání SQL příkazu ze skriptu – create.php
<? MySQL_PConnect("localhost", "jkj", "heslo"); MySQL_Select_DB("jkj"); $vysledek = MySQL_Query("CREATE TABLE Telefony ( Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, Jmeno VARCHAR(40), Telefon VARCHAR(14), Email VARCHAR(60))"); if ($vysledek) echo "SQL dotaz byl úspěšný."; else echo "Při zpracování SQL příkazu došlo k chybě."; ?>