E N D
Přístup k databázím z WWW PHP+MySQL
Síť WWW je v současné době místem pro dynamické, často databázemi řízené webové aplikace. Tvorba webového serveru pomocí statických souborů HTML je nepřijatelná. Dynamické webové prezentace jsou flexibilní výtvory s velkou kapacitou a lze je popsat spíše jako aplikace, než pouze jako stránky. K tvorbě dynamických webových aplikací slouží mnoho různých technologií. Nejčastěji se používají: • Microsoft ASP (Aktive Server Pages) • JSP (Java Server Pages) • ColdFusion • PHP
Co je PHP? PHP – Personal Home Page. Technologii vytvořil v r. 1994 Rasmus Lerdorf. PHP se označuje jako „vložený skriptovací jazyk“ – znamená to, že je-li vložen do HTML, lze jej přímo interpretovat v kódu HTML. PHP je technologie nezávislá na platformě, je určena pro servery – vše, co se v kódu PHP odehrává, se odehrává na serveru, nikoli na klientském počítači. Jazyk PHP lze používat na většině operačních systémů (Windows, Unix, Linux, Macintosh). Oficiální webovou aplikaci lze najít na stránkách www.php.net.
Co je MySQL? MySQL (vyslovuje se „maj es kjú el“) je nejoblíbenější databázový systém s veřejným zdrojovým kódem. MySQL nabízí vysoký výkon, přenositelnost, spolehlivost, přiměřenou dobu zaučení za minimální náklady. Aplikace byla vyvinuta a je udržovaná švédskou společností MySQL AB. Jde o systém správy databází určený pro relační databáze (RDBMS – relational database management system). Relační databáze je kolekcí vzájemně provázaných dat – k ukládání informací používá tabulky.
Jak funguje propojení PHP+MySQL? Začleněním databáze do webové aplikace lze určitá data generovaná PHP načítat z databáze MySQL. Obsah stránek přestává být statický (napevno zapsaný) a stává se flexibilním. To je pak klíčem k dynamickým webovým prezentacím. Oficiální webovou aplikaci lze najít na stránkách www.msql.com.
Sserver Kklient Ppožadavek skriptu Ppožadavek na URL adresu ddotaz PPHP MySQL ddata HHTML HHTML
Potřebné softwarové vybavení Abychom mohli vyzkoušet práci se síťovými verzemi databázových systémů bez ohledu na používaný operační systém, budeme k tomu potřebovat: • software webového serveru (např. Apache, Xitami, IIS ) – budeme používat Apache, • PHP, • MySQL, • webový prohlížeč – (Internet Explorer, Netscape Navigator, Mozilla, Opera …), • textový editor, nebo integrované vývojové prostředí, • v případě používání vzdáleného serveru – aplikaci umožňující FTP přenosy.
Je dobré, že vše se může pořídit prakticky zadarmo – Apache, PHP i MySQL jsou produkty s veřejně přístupným kódem – open source. Máme-li počítač, stačí pouze stáhnout nezbytný software z internetu a nainstalovat jej dle předpisu. Počítač pak může sloužit jednak jako klient a jednak jako server. Je možné si předplatit službu WEBHOSTING (využívání prostoru na serveru poskytovatele). Při výběru poskytovatele je důležité, zda lze na daném serveru spouštět aplikace PHP a využívat databáze MySQL.
Jak pracuje Webový server? Na server lze pohlížet ze dvou úhlů. 1. Server je vybraný stroj, na kterém je nainstalovaný databázový systém a na jeho discích jsou uložena naše data. 2. Na druhou stranu je server proces (program), který běží na zvoleném počítači a který obsluhuje jednotlivé požadavky klientů. Klienti zadávají SQL příkazy a server tyto příkazy nad databází vykonává. Klientem pak může být konkrétní databázová aplikace, nebo také řádkový terminál.
Instalace– verze 3.3 až 3.5 Pokud chceme vyvíjet webové aplikace na svém vlastním serveru (domácím počítači), s největší pravděpodobností bude nutné nejdříve nainstalovat nezbytný software: 1. Na přístupné místo rozbalíme soubor UniServer3_x.zip – uložený na P:/Common/Board/Databázové Systémy Je to volný produkt a neobsahuje komerční přístup! Nepotřebuje instalaci, stačí nakopírovat! Požadavky systému: - Windows 95, 98, ME, NT, 2000 nebo XP; - podpora protokolu TCP/IP. Uzpůsobení serveru Apache: - zapnout TCP/IP protokol (nemáte-li síťovou kartu, nainstalujte jakýkoli).
Instalace 2. Použití: • spustit program Server_Start.bat (vytvoří se automaticky disk W:\ - bude se chovat jako server), • nebo Disk Start.vbs (lze vybrat disk, který se bude chovat jako server), • připojí http://localhost/apanel/. 3. Pro správné ukončení práce je potřeba z hlavního menu vybrat "Shutdown Server", nebo spustit soubor Stop.bat – zastaví práci MySQL i Web Serveru.
Definovaní uživatelé MySQL Po instalaci softwaru bývá automaticky vytvořen uživatelroot, který má nastavené heslo root a nastavená všechna privilegia – oprávnění k vykonávání příkazů v databázích. Mimo uživatele root je vytvořen ještě uživatel pma, který nemá žádná privilegia ani heslo. Informacemi o vytvoření nového uživatele, vytvoření a změně hesla uživatele, nastavení privilegii uživatelům … se budeme zabývat v dalších kapitolách.
Možnost nastavení konfigurace Uniform Serveru Z hlavního menu vybereme volbu "Uniform Server configuration"
Testování instalace- PHP 1.Vytvořte v textovém editoru následující dokument PHP 2. Uložte soubor jako phpinfo.php 3. Přeneste jej na webový server – tj. na disk W:/www 4. Ověřte správnost kódu ve svém prohlížecí – na web serveru spusťte phpinfo.php Funkce phpinfo( ) vrací konfigurační informace o instalaci jazyka PHP v přehledné tabulce.
Propojení PHP+MySQL 1.Vytvořte v textovém editoru následující dokument PHP 2. Uložte soubor jako mysql_test.php 3. Přeneste jej na webový server – tj. na disk W:/www 4. Ověřte správnost kódu – spusťte jej na web serveru 5. Je-li skript schopen připojení k serveru, zobrazí se text
6. V případě, že se připojit nemůže, zobrazí zprávu Pokud se skript PHP nemůže připojit k serveru MySQL, jedná se většinou o problém s oprávněními uživatelů. Je potřeba zkontrolovat uživatelské jméno, heslo a počítač, z kterého se připojujeme (hostitel).
Práce s monitorem MySQL Častým způsobem komunikace se serverem MySQL (kromě skriptů PHP) je monitor mysql (nebo klient mysql). Klientskou aplikaci mysql spustíme prostřednictvím příkazového řádku z adresáře usr/local/mysql/bin: mysql –u root –p (heslo)root
Vytvoření databáze CREATE DATABASE název_databáze; Výpis seznamu existujících databází na serveru MySQL: SHOW databases; Výběr databáze, kterou chceme používat: - moje_db USE název_databáze;
Vytvoření tabulky CREATE TABLE název_tabulky ( jméno_sloupce1 TYP [integritní omezení], jméno_sloupce2 TYP [integritní omezení], ...); Ověření existence vytvořené tabulky: SHOW TABLES; SHOW COLUMNS FROM název_tabulky; nebo DESCRIBE název_tabulky;