Střední odborná škola a Střední odborné učiliště, Hořovice DIGITÁLNÍ UČEBNÍ MATERIÁL Kód DUM : VY_32_INOVACE_DYN.1.12_soubory
Název materiálu: Anotace Autor Jazyk Očekávaný výstup
12 PHP- práce se soubory v PHP
DUM naučí žáky používat v PHP soubory pro uložení a přečtení dat Ing. Vladimír KEBERT, CSc (Autor) Čeština RVP 18-20-M/01 Informační technologie, předmět: Publikování na Internetu, 2. ročník RVP 63-41-M/01 Ekonomika a podnikání, předmět: Publikování na Internetu, 2. ročník
Speciální vzdělávací potřeby Žádné Klíčová slova
Př. LAMP, WAMP, XAMPP, PHP, server, Apache, Localhost, Host, IP adresa, C/S , PHP.ini, Httpd.conf
Druh učebního materiálu Prezentace s prvky interaktivity Druh interaktivity Cílová skupina
Kombinované Žáci 2. ročníku
Stupeň a typ vzdělávání
Odborné vzdělávání / Informační a komunikační technologie
Typická věková skupina
16 - 19 let
Celková velikost
Velikost materiálu v kB : 131
| tématická oblast sady: Dynamický web
Střední odborná škola a Střední odborné učiliště, Hořovice DIGITÁLNÍ UČEBNÍ MATERIÁL 1. Základní použití souborů v PHP: - Do souborů je možné postupně ukládat data z proměnných – např.výsledky výpočtů, mezihodnoty, časové údaje, přístupové údaje atd. - Zápisy do souborů používáme zpravidla u jednodušších aplikací, kde se nenavazuje na databázi ale není top pravidlem - Používané soubory jsou prakticky vždy textové $data=fopen($soubor, "a+"); fwrite($data, $odmocnina); $nová data
$soubor
1.Soubor se 2. Zápis – vyjme nebo změna dat založí (modifikace)
fclose($data);
fopen
fwrite fwrite
fclose fclose
3. Nová podoba souboru se uloží
Střední odborná škola a Střední odborné učiliště, Hořovice DIGITÁLNÍ UČEBNÍ MATERIÁL 2 . Pochopení procedury otevření souboru
$soubor="data.txt";
Do proměnné uložíme jméno souboru
$data=fopen($soubor, "a+");
Celý soubor jako blok „vložíme“ do proměnné, pokud není, založí se
fwrite($data, $odmocnina);
Blok souboru je zapsán (modifikován)
fclose($data);
Blok souboru je uložen a zavřen
Střední odborná škola a Střední odborné učiliště, Hořovice DIGITÁLNÍ UČEBNÍ MATERIÁL 3 .Režimy otevírání souborů v PHP: - Soubor lze otevřít nebo založit více způsoby: a) jen ke čtení (r) b) pro čtení a zápis (r+) (Pokud soubor neexistuje, založí se nový, každým průchodem se původní soubor přepíše.) c) pro zápis a čtení (w+), pokud soubor neexistuje, PHP jej vytvoří , pokud již existuje, bude přepsán ! d) jen pro zápis (w), pokud soubor neexistuje PHP jej vytvoří , pokud již existuje, bude přepsán ! d) pro čtení a přidání nových dat (a+). Pokud soubor neexistuje, pak se založí. Data se každým průchodem zapisují (přidávají na konec souboru) e) pouze pro přidání nových dat (a). Pokud soubor neexistuje, pak se založí. Data se každým průchodem zapisují (přidávají na konec souboru)
Střední odborná škola a Střední odborné učiliště, Hořovice DIGITÁLNÍ UČEBNÍ MATERIÁL 4. Jak provést zápis do souboru - $data - $odm1 - $odmocnina - $odmocnina3
je jméno souboru, do kterého zapíšeme proměnná obsahuje číslo, které jsme odmocnili obsahuje výsledek výpočtu druhé odmocniny obsahuje výsledek výpočtu třetí odmocniny
fwrite($data, $odm1 . ";" $odmocnina . ";" . $odmocnina3 . "." );
Čárka ! Soubor, do kterého zapisujeme
Co do souboru zapisujeme. Tečky mezi položkami jsou oddělovače vícenásobného zápisu (jako u echo)
256 ; 16.000 ; 6.350 . 4 ; 2.000 ; 1.587. 4 ; 2.000 ; 1.587.
Střední odborná škola a Střední odborné učiliště, Hořovice DIGITÁLNÍ UČEBNÍ MATERIÁL 5. Jak provést výpis souboru - $data - $odm1 - $odmocnina - $odmocnina3
je jméno souboru, který čteme proměnná obsahuje číslo, které jsme odmocnili obsahuje výsledek výpočtu druhé odmocniny obsahuje výsledek výpočtu třetí odmocniny
Abychom přečetli celý soubor, je třeba jej otevřít pro čtení, zjistit jeho délku (krok2) a tento počet znaků přečíst (krok3)
1) $text = fopen("$soubor", "r"); 2) $delka_souboru = filesize("$soubor"); 3) $texta = fread($text , $delka_souboru);
Střední odborná škola a Střední odborné učiliště, Hořovice DIGITÁLNÍ UČEBNÍ MATERIÁL 4 . Souvislý příklad základní práce se souborem Zadání úlohy: Napište aplikaci PHP, která vypočítá druhou a třetí odmocninu zadaného čísla, výsledky uloží do souboru tak, že každým průchodem připojí nové výsledky na konec souboru. Když soubor je tak „velký“ že obsahuje více než 250 znaků, sám se smaže, založí se znovu a opět se plní novými výsledky. Po každém průchodu se soubor přečte a vypíše vypočtené hodnoty pod sebe.
(Úlohu napišme nejjednodušším možným způsobem pro pochopení principu, zatím pomineme různé kontrolní mechanismy – viz příloha.) Řešená úloha je v přiloženém php.souboru s názvem „odmocnina.php“ . Úlohu spusťte, analyzujte kód a provádějte úkoly, které se v aplikaci zobrazili.
Střední odborná škola a Střední odborné učiliště, Hořovice DIGITÁLNÍ UČEBNÍ MATERIÁL 7. Úloha: 1. Na svém PC (ve školní laboratoři) najděte konfigurační soubory pro webový server a pro PHP. 2. Nastavte opačné kódování češtiny a sledujte účinek v zobrazení stránek. 3. Nastavte naslouchání serveru na jiném portu než je 80 (např. 78), restartujte server a vyvolejte zobrazení stránky na tomto portu. 4. Vyzkoušejte nastavit zobrazení varování v php.ini editací tohoto konfiguračního souboru a ověřte účinek nastavení.
Střední odborná škola a Střední odborné učiliště, Hořovice DIGITÁLNÍ UČEBNÍ MATERIÁL
Přehled použité literatury a děl: Pokud není uvedeno jinak, autorem použitých textů a mediálních příloh (obrázků, textů, interaktivních materiálů, screenshotů) je autor tohoto digitálního učebního materiálu. Příklady a skripty v příloze DUM jsou dílem autora tohoto materiálu:. Použité zdroje: 1. SOURCEFORGE.INC. PHP MyAdmin Official Website (logo + aplikace) [online] 20032013 [cit. 2013-02-09]. Dostupné na Internetu: http://www.phpmyadmin.net/home_page/ 2. Kolektiv(Adaptic, s.r.o).: Práce se soubory. In: [online]. Tvorba-webu.cz, Copyright (c) 2003 - 2008 [cit. 2013-03-05]. Dostupné z: http://www.tvorbawebu.cz/php/prace_se_soubory.php 3. ZAJÍC,P. PHP (4). [cit. 2013-02-09].Dostupné z: http://www.linuxsoft.cz/article.php?id_article=176