ARCHIV |
|||||
Software (10844)
Distribuce (131)
Skripty (697)
Menu
Diskuze
Informace
|
PHP (68) - Stavíme portálTéma na více dílů - stavba portálu v PHP. A s příkladem funkčního webu. Počínaje tímto dílem našeho seriálu zcela opustíme poněkud nudnou šeď teorie PHP programování, a vrhneme se na praxi. V několika následujících dílech totiž poslepujeme úplně nový web a projdeme přitom všechny kroky, které byste měli v takové situaci mít na paměti. Programování v PHP je dosti svázáno s dalšími technologiemi, takže jeden větší příklad bude lepší než několik malých fragmentů kódu. Je to samozřejmě dilema - čím kratší je příklad, tím spíše se můžete
soustředit na to, co opravdu řeší - ale čím je rozsáhlejší, tím spíše
pochopíte, jak spolu jednotlivé etapy práce a části kódu souvisejí.
Budeme tedy používat nejen PHP, ale HTML a MySQL (možná trochu i
styly). Navíc, budu se snažit představit vám jednotlivé kroky stavby
webu tak, jak v praxi opravdu probíhají. Tím by čtenář (zejména pokud s
webovou tvorbou začíná) měl získat alespoň základní představu o tom, co a kdy se má dělat. Nebude to internetový obchodNe! Internetové obchody dělá jako příklad na PHP každý. Navíc mi
(pokud se implementuje přihlašování i nakupování) přijdou pro
začátečníka poněkud obtížné na pochopení. Namísto toho zkusíme
naprogramovat web o nějaké vymyšlené hudební skupině. Bude to
prinicpiálně velmi jednoduché a nebudou v tom žádné záludnosti (účetní
věci, DPH apod.), které by internetový obchod zcela jistě provázely. Jak jen to půjde, nebudeme se zabývat žádnými záležitostmi, které
přímo nesouvisejí s PHP. Naše "stránky" tedy nebudou mít žádnou nebo
téměř žádnou grafiku, abychom se soustředili na to, co nás opravdu
zajímá. Velmi málo (pokud vůbec) se budeme zabývat věcmi jako je
klientské skriptování nebo DHTML. ZadáníPrvní věc, kterou byste si měli při návrhu webu ujasnit, je zadání.
My budeme tvořit web propagující smyšlenou hudební skupinu. Součástí
stránek bude následující funkcionalita:
Jednotlivé body budeme chtít samozřejmě rozpitvat. Taktická -
poznámka: pokud by se jednalo o komerční věc, tohle je nejlepší udělat
spolu se zákazníkem. Tak tedy, rozhraní pro zadávání koncertů by mělo
umět následující věci:
Podsekce diskografie by měla mít následující funkce
Správa uživatelů by měla mít následující funkce:
Zveřejňování textů písní by mělo mít následující vlastnosti:
Trochu jsem to rozepsal - zejména abych předvedl, jak je důležité
mít "cílový koncept". Asi si umíte představit, že kdybyste tento seznam
tvořili se zákazníkem, mohl by být daleko rozsáhlejší. A taky si asi už
v téhle chvíli umíte představit, co by se stalo, kdybyste začali
pracovat bez ujasnění těchto základních pravidel hry. Pozn.: Pokud se jedná o komerční
záležitost, jen naprostý sebevrah by byl schopen zkalkulovat cenu
předtím, než udělá nějaký podobný cílový koncept. Profík si naopak
vyhradí, že s každou změnou funkcionality se znovu probere otázka
financí. Technický rozborTeď není chvíle, kdy bychom měli "přijít od zákazníka, sednout a
psát", nýbrž chvíle pro nějakou tu technologickou poradu. Samozřejmě,
že aplikace bude vyžadovat skriptování na straně serveru - jasně volíme
PHP. Bude potřeba databáze (minimálně na uložení alb, písní, textů a
uživatelů). Zvolíme tedy (například) MySQL. Možná budeme potřebovat
poshánět nějaký ten software - už jsme o tom psali. Další věci
ke zvážení. Teď něco z HTML. Budeme potřebovat stanovit, jaký typ dokumentu
vlastně vyvíjíme - zda HTML, XHTML a jakou verzí specifikace se přitom
budeme chtít řídit. To je nesmírně důležité, protože náš kód by měl být
vždy validní (psal o
tom Luboš
Turek). Dobrý rozbor této problematiky najdete zde.
Aplikace by měla už od prvopočátku mít nějakou koncepci rozvržení,
tzv. layoutu. V zásadě se na každý složitější site použije některá ze
tří následujících technologií:
Každý z těchto způsobů má své zastánce, pěkně to shrnuje článek
Pavla Káchy. Formálně je nejsprávnější použít technologii kaskádových
stylů, protože právě za tímto účelem byla vyvinuta. My použijeme
tabulky, protože to bude pro výklad některých pasáží názornější než CSS. Pozn.: Pokud to s tvorbou webu
myslíte vážně, rozhodně uvažujte o kaskádových stylech. Je to
budoucnost webdesignu. Jednou větou - styly nejlépe umožňují oddělit
obsah stránek od formy. V dalším díle seriálu si poslepujeme "kostru" našeho webu a ujasníme si, jak vyřešíme navigaci mezi jednotlivými částmi stránek.
Související články
Předchozí Celou kategorii (seriál) Další
PHP (1) - Historie a budoucnost
PHP (2) - Jak to funguje PHP (3) - Instalace PHP (4) - Základy syntaxe PHP (5) - Příkaz Echo; formátování kódu PHP (6) - Typy proměnných PHP (7) - Pole PHP (8) - Výrazy, konstanty, inkrementace PHP (9) - Přetypování proměnných PHP (10) - Logické výrazy a operátory PHP (11) - Operátory porovnání; priorita operátorů PHP (12) - Podmínky PHP (13) - Příkazy cyklu PHP (14) - Cyklus for PHP (15) - Funkce PHP (16) - Vyrobme si kalendář PHP (17) - Dokončujeme kalendář PHP (18) - Funkce pro práci s poli PHP (19) - Objekty PHP (20) - Objekty podruhé PHP (21) - Vkládání souborů PHP (22) - Regulární výrazy PHP (23) - Neztraťte se ve funkcích PHP (24) - Pracujeme s formuláři PHP (25) - Formuláře - nikomu nevěřte PHP (26) - Formuláře na sto způsobů PHP (27) - Příklady na formuláře PHP (28) - Chybovati je lidské PHP (29) - Soubory a adresáře PHP (30) - Počitadlo pomocí souborů PHP (31) - Upload a download souborů PHP (32) - Příklad na BLOG PHP (33) - HTTP hlavičky PHP (34) - Úvod do databází PHP (35) - Uložení dat v databázi PHP (36) - Připojujeme se k MySQL PHP (37) - Tvorba tabulek v MySQL PHP (38) - Dolujeme data z MySQL PHP (39) - Zobrazujeme a stránkujeme data PHP (40) - PHP a vkládání záznamů do databází PHP (41) - Měníme data v databázích PHP (42) - Odstraňujeme databázová data PHP (43) - MySQL rychleji a rychleji PHP (44) - MySQL ještě rychleji PHP (45) - Jsou data v databázi v bezpečí? PHP (46) - Importujeme data do databáze PHP (47) - Exportujeme data PHP (48) - Práce s binárními daty (BLOB) PHP (49) - Kam kráčíš, MySQL? PHP (50) - Ověřování uživatelů PHP (51) - Přenos dat mezi stránkami PHP (52) - Cookies PHP (53) - Sessions PHP (54) - Dodržování webových standardů PHP (55) - Odesílání e-mailů PHP (56) - Tisk a PDF PHP (57) - XML PHP (58) - XML lépe a radostněji PHP (59) - zapisujeme XML PHP (60) - Rozsáhlejší projekty 1. PHP (61) - Rozsáhlejší projekty 2. PHP (62) - Rozsáhlejší projekty 3. PHP (63) - Rozsáhlejší projekty 4. PHP (64) - Ladění kódu PHP (65) - Ladění kódu 2. PHP (66) - PHP debugger PHP (67) - Zdroje informací o PHP PHP (69) - Stavíme portál 2. PHP (70) - Registrace uživatelů na portálu PHP (71) - Přihlašování uživatelů na portál PHP (72) - Hrátky s uživateli PHP (73) - Frontend a backend PHP (74) - Administrátorské rozhraní portálu PHP (75) - Pokračujeme na portále PHP (76) - Zobrazujeme data na portále PHP (77) - Portál, databáze a relace PHP (78) - Informační obsah portálu PHP (79) - Triky s formuláři a ergonomie webu PHP (80) - Administrace diskografie hudebního portálu PHP (81) - Uživatel versus programátor PHP (82) - zabezpečení vstupů formulářů PHP (83) - Ukládání textů písní na hudebním portále PHP (84) - Ještě k registraci PHP (85) - ukládání souborů do databáze na portálu PHP (86) - zobrazení dat a stahování soborů pro registrované PHP (87) - finišujeme portál PHP (88) - provoz ve Windows PHP (89) - cesta do hlubin php.ini PHP (90) - Poťouchlé konfigurační volby PHP (91) - php.ini potřetí a naposledy PHP (92) - funkce pro interakci s operačním systémem PHP (93) - příkazový řádek PHP (94) - GUI PHP (95) - GUI podruhé PHP (96) - (ne)bezpečné PHP PHP (97) - bezpečnost ještě jednou PHP (98) - PHP 5. PHP (99) - Budoucnost PHP PHP (100) - Závěr PHP (101) - Apríl: Příklady z praxe php rewrite Byte order mark a PHP Předchozí Celou kategorii (seriál) Další Ke stažení jako HTML nebo jako PDF.
|
Vyhledávání software
Vyhledávání článků
28.11.2018 23:56 /František Kučera 12.11.2018 21:28 /Redakce Linuxsoft.cz 6.11.2018 2:04 /František Kučera 4.10.2018 21:30 /Ondřej Čečák 18.9.2018 23:30 /František Kučera 9.9.2018 14:15 /Redakce Linuxsoft.cz 12.8.2018 16:58 /František Kučera 16.7.2018 1:05 /František Kučera
Poslední diskuze
31.7.2023 14:13 /
Linda Graham 30.11.2022 9:32 /
Kyle McDermott 13.12.2018 10:57 /
Jan Mareš 2.12.2018 23:56 /
František Kučera 5.10.2018 17:12 /
Jakub Kuljovsky | |||
ISSN 1801-3805 | Provozovatel: Pavel Kysilka, IČ: 72868490 (2003-2024) | mail at linuxsoft dot cz | Design: www.megadesign.cz | Textová verze |