PHP PHP a MySQL - 15 Mgr. Josef Nožička IKT PHP
AnotaceMateriál poskytuje žákům souhrn nejdůležitějších příkazů, potřebných k tomu, aby mohl PHP skript spolupracovat s databází MySQL. Musí být doplněn výkladem. AutorMgr. Josef Nožička (Autor) JazykČeština Očekávaný výstup26–41-M/01 Elektrotechnika M/01 Technické lyceum Speciální vzdělávací potřeby - žádné - Klíčová slovaDatabáze, dotaz Druh učebního materiáluPrezentace Druh interaktivityKombinované Cílová skupinaŽák Stupeň a typ vzděláváníodborné vzdělávání Typická věková skupina let Vazby na ostatní materiályJe součástí IKT.
MySQL MySQL je databázový systém, vytvořený firmou MYSQL_AB a nyní vlastněný společností Sun Microsystems. Jedná se o multiplatformní databázi, v níž probíhá komunikace s pomocí jazyka SQL. Mezi jeho hlavní výhody patří snadná implementovatelnost (lze jej instalovat na MS Windows, Linux, ale i na další operační systémy), výkon a také to, že se jedná o volně šiřitelný software. Především z těchto důvodů se MySQL nejčastěji používá i v PHP skriptech (byť pro ukládání dat je rovněž možno použít např. databázové systémy Postgree nebo Oracle).
Připojení k databázovému serveru Aby mohl program, napsaný v PHP, vůbec s databází pracovat, je třeba se k ní připojit. K tomu slouží příkaz mysql_connect. Syntaxe příkazu: mysql_connect (adresa databázového serveru, uživatelské jméno, přístupové heslo ); Např. mysql_connect (“mysql.ic.cz“,“ic_jannovak“,“12345“); Příkaz mysql_connect() vrací celočíselnou hodnotu, identifikující vytvořené připojení. Pokud se připojení k databázovému systému nezdaří, je vrácena hodnota false.
Výběr databáze Po vytvoření připojení připojení je třeba vybrat databázi, se kterou budeme pracovat. K tomu je určen příkaz mysql_select_db. Syntaxe příkazu: mysql_select_db (jméno databáze ); Jak u příkazu mysql_connect, tak i u mysql_select_db je dobré provést v programu ošetření, zda při nich nedošlo k chybě. Příklad: <?php mysql_connect (“mysql.ic.cz“,“ic_jannovak“,“12345“) or die (“Nepodařilo se připojit k databázovému serveru!“); mysql_select_db (“ic_jannovak“ ) or die (“Nepodařilo se otevřít databázi!“); …
Položení dotazu Pro vykonání SQL dotazu je v PHP určen příkaz mysql_query. Syntaxe příkazu: mysql_query (SQL příkaz ); Tento příkaz vrací hodnotu true, pokud byl dotaz úspěšně proveden. Nebyl-li dotaz proveden (nejčastěji z důvodu syntaktické chyby v SQL příkazu nebo z důvodu uvedení neexistujícího jména tabulky či položky), je vrácena hodnota false. Příklad: $sql=“insert into Zbozi (kod,jmeno,pocet) values (‘121‘,‘šroub‘,200)“; $res=mysql_query ($sql); if ($res) echo “Záznam byl přidán“; else echo “Dotaz nebyl proveden!“;
Zpracování výběrového dotazu Zatímco u akčních SQL příkazů (insert, delete, update) nevyžaduje jejich výsledek žádné další zpracování (kromě oznámení o provedení nebo o eventuelní chybě), výsledek výběrového dotazu je třeba uživateli prezentovat (obvykle formou výpisu). K vlastním hodnotám je možno se dostat pomocí několika příkazů, nejpoužívanějším z nich je mysql_fetch_array. Tento příkaz zpřístupňuje vždy jeden řádek z výsledku v asociativním poli. Pro přístup k jednotlivým hodnotám můžeme použít nejen číselné indexy(0,1,2,..), ale také indexy odpovídající názvům sloupců v tabulce.
Zpracování výběrového dotazu - příklad Následující příkaz ukazuje zpracování výběrového dotazu, jehož výsledkem je výpis všech záznamů z tabulky Zboží na webové rozhraní. $sql="SELECT kod,jmeno,pocet FROM Zbozi order by kod"; $res=mysql_query($sql) or die("Nelze provést dotaz!"); echo " "; echo " kód: jméno: počet:"; while ($zaznam = mysql_fetch_array($res)) { echo " $zaznam[0] $zaznam[1] $zaznam[2]] "; } echo " ";
Další užitečné příkazy mysql_fetch_row - příkaz s podobnou funkcí jako mysql_fetch_array, pouze zde není možnost přístupu k jednotlivým prvkům prostřednictvím názvů polí mysql_num_rows - zjistí počet záznamů, vyhovujících položenému dotazu, například při výběrovém dotazu select mysql_affected_rows - spočítá, kolik řádků ovlivnil databázový dotaz, například update (u kolika řádků byla provedena změna) nebo delete (kolik řádků bylo smazáno)
Zdroje BRÁZA, Jiří. PHP 5: začínáme programovat. 1. vyd. Praha: Grada Publishing, 2005, 244 s. ISBN X.