PHP (87) - finišujeme portál
Dnes uzavřeme práci na hudebním portálu. Co se musí udělat, aby byl projekt schopný uveřejnění?
5.1.2005 15:00 |
Petr Zajíc
| Články autora
| přečteno 41911×
Dnes se podíváme na některé věci, na něž byste při skutečné práci na
webech v PHP neměli zapomínat. Čímž dokončíme náš cvičný portál a i
tedy celou stať s většími příklady v PHP. Přestože to budou převážně
samozřejmosti, divili byste se, kolik lidí takové věci řeší na až
poslední chvílí, případně vůbec.
Standardy
Webové standardy jsou tu proto, aby se dodržovaly. K testování, zda
je stránka validní či nikoli, můžete použít celou řadu validátorů.
Velmi dobrý je ten na http://validator.w3.org/,
který mnoho lidí používá proto, že je k dispozici ON-LINE a proto, že
případné nedostatky dokumentu rovněž přehledně vysvětlí. Testovat
dynamický web však není tak jednoduché, jak by se na první pohled mohlo
zdát. Prozradím vám tip. Při testování platnosti nějaké dynamické
stránky (tak dejme tomu v našem případě stránky pro zobrazení
diskografie pro přihlášeného uživatele) si
- Stránku nechám zobrazit v prohlížeči
- Nechám si zobrazit její zdrojový kód (např. ve Firefoxu pomocí
pravého tlačítka myši)
- Stránku si uložím na disk
- Na stránkách validátoru je k dispozici rozhraní pro test
souborů pomocí jejich uploadu na server - to použiju
Kontrolou jsem objevil drobné prohřešky proti standardům i na tomto
testovacím portále - takže si nahrajte aktuální verzi, pokud budete
chtít s projektem dále experimentovat.
Databáze
Pokud Váš projekt používá nějakou databázi, měli byste si ji v této
fázi zazálohovat. Zazálohováním myslím jak strukturu, tak i data. Při
zálohování dat ale dejte pozor na zabezpečení. Pokud databáze obsahuje
citlivé údaje, dobře zálohu zabezpečte nebo tyto údaje nezálohujte. Tak
například na našem portále bychom za citlivé mohli považovat údaje z
tabulky uzivatele a proto jsem je nezálohoval. Záloha toho zbytku je k
dispozici k
nahlédnutí nebo ke stažení.
Zálohu můžete jednoduše vytvořit pomocí nějakého nástroje pro
administraci MySQL, třeba pomocí phpMyAdminu. Taková záloha je důležitá
nejen kvůli tomu, kdyby se databáze poškodila, ale rovněž kvůli
případným změnám. Nahlédnutím do generovaného souboru tak můžete lehce
zjistit, jakou strukturu měla databáze v době vytvoření. Kdyby bylo
potřeba později strukturu změnit, zálohujte rovněž.
Webdesign
Pokud bude portál funkční, můžeme jej dozdobit pomocí kaskádových
stylů, barev, obrázků, zvuků a všemožných jiných nemožností. My se tím
v našem seriálu zabývat nebudeme, patřilo by to spíše do seriálu o HTML
nebo o kaskádových stylech. Při tvorbě designu byste však přece jen
měli mít na paměti některé zásady, přímo či nepřímo související s
programováním:
- Holý web bez grafiky se může jevit jako až extrémně rychlý.
Pamatujte však na to, že zdání klame a že uživatel bude muset
postahovat i zvuky, obrázky a animace, pokud je na webu budete mít.
Mluvím o tom proto, že vina za "pomalý" web bývá někdy neprávem
svalována na PHP či na samotného programátora.
- Přidáním vizuálních prvků se může stránka stát zase nevalidní.
Pozor na to.
- Pokud jsou vizuální prvky "jen" grafickou nadstavbou, přidává je
většina programátorů a webdesignérů do projektu až v této fázi.
Jestliže ale je grafika součástí logiky webu, mělo by se s ní pracovat
již dříve.
Záloha
Pakliže jste dali na moji radu,
používáte asi nějaký systém pro správu kódu, jako je například CVS nebo
Subversion. Takže zálohování je jednoduchá věc: Potvrdíte změny,
nazvete si verzi nějakým honosným označením (třeba "release 1.0",
"musicweb 2005 cheetah" a podobně), případně si zazálohujete repository
a je hotovo. Pokud však systém pro správu kódu nepoužíváte, slušelo by
projektu alespoň zabalení do archivu, vypálení na CD a uložení na
nějaké bezpečné místo.
Pozn.: Slyšel už jsem
argument:"Proč bych to zálohoval, mám to přece doma v PC a navíc je to
na webu." Popovídejte si o tom s někým, kdo přišel o data v počítači a
jeho web byl hacknut. Bude mít pro vás zajímavé tipy ;-)))
Licencování
Pokud bude Váš konkrétní projekt provozován pod nějakou
definovatelnou licencí, měli byste se postarat, aby to bylo zřejmé.
Například zde
najdete překlad licence GNU a rovněž návod, jak tuto licenci použít ve
svých projektech.
Pozn.: Nikdo Vás samozřejmě nenutí
používat GNU licenci. Ale může to být dobrá volba, zejména chcete-li
svůj výtvor sdílet.
Bude-li projekt záležitost uzavřená, mohou se sestavit licenční
ujednání jiného typu. Je rovněž možné stanovit vlastní podmínky, za
nichž má (nebo nemá) být dílo šířeno. Pracujete-li pro zaměstnavatele,
bude mít asi vlastní představu, jak s Vaším dílem naložit ;-(
Testovací provoz
V reále by asi web v této fázi šel do testovacího provozu. K tomu
není mnoho co dodat. Snad jen pár postřehů k testovacím postupům obecně:
- Někdy se hodí být u toho, když uživatel zkouší portál ovládat.
Případné připomínky pak můžete rovnou konzultovat.
- Tester nebo uživatel by měl mít k dispozici nějaký jednoduchý
způsob, jakým Vám dá k dispozici své postřehy.
- Pakliže budete předávat svou práci někomu, kdo si rád na poslední
chvíli vymýšlí, vezměte si s sebou podklady k zadání. Zákazníky někdy
napadají neuvěřitelné věci, které by mohly znamenat celý portál
předělat - pokud ale máte dobře zadání, není většinou co řešit.
- Testovací prostředí by se mělo co nejméně lišil od prostředí
ostrého. U webů se někdy testovací verze portálů umisťují na provozní
servery, ale do jiných umístění. Takže máte například ostrý provoz na
www.nazevportalu.cz a testovaní na www.nazevportalu.cz/test
- U testovacího provozu možná budete chtít zapnout protokolování
chyb nebo nějaké jiné mechanizmy sledující chování portálu.
- Rovněž užitečný může být protokol o činnosti serveru; poradí Vám
například, které stránky bývají navštěvovány častěji než jiné. K témuž
slouží počitadla návštěv.
Závěrečné poznámky
Tento jak jsme jej honosně nazvali "hudební portál" není samozřejmě
skutečný a hotový webový portál. Cílem bylo pouze ukázat vám co možná
nejvíce programovacích technik jazyka PHP, a udělat to jinak než s
použitím klasického příkladu - internetového obchodu. Na portálu chybí
některé věci, jako třeba:
- Některé údaje jdou jen vkládat
- Některé údaje jdou jen vkládat a editovat, ne odstraňovat
- Stránky nejsou provázány tak kvalitně, jak by mohly být.
Přesto věřím, že alespoň kousek inspirace z něj budete mít. Při
vývoji vlastních prací můžete totiž narazit na spoustu úloh, kterých
jsme se tak či tak dotkli. A můžete se rozhodnout, že buď použijete
nazančená řešení, nebo sestavíte vlastní, třeba i lepší. V dalším díle
seriálu tedy tvorbu portálu opustíme, a budeme se věnovat obecnějším
tématům. Těšte se - tématem následujícího dílu bude Proč (ne)používat PHP na Windows.
Na současný stav projektu se můžete na našem webu podívat
nebo si jej můžete stáhnout.
Pozn.: Aby Vám stažená verze
fungovala na lokálním stroji, upravte si hodnotu konstant SQL_HOST,
SQL_USERNAME, SQL_PASSWORD a SQL_DBNAME. Případně si je můžete včlenit
do konfiguračního souboru podobně, jako jsem to udělal v souboru
func.php.
Verze pro tisk
|
Příspívat do diskuze mohou pouze registrovaní uživatelé.
|
|
Vyhledávání software
Vyhledávání článků
28.11.2018 23:56 /František Kučera Prosincový sraz spolku OpenAlt se koná ve středu 5.12.2018 od 16:00 na adrese Zikova 1903/4, Praha 6. Tentokrát navštívíme organizaci CESNET. Na programu jsou dvě přednášky: Distribuované úložiště Ceph (Michal Strnad) a Plně šifrovaný disk na moderním systému (Ondřej Caletka). Následně se přesuneme do některé z nedalekých restaurací, kde budeme pokračovat v diskusi.
Komentářů: 1
12.11.2018 21:28 /Redakce Linuxsoft.cz 22. listopadu 2018 se koná v Praze na Karlově náměstí již pátý ročník konference s tématem Datová centra pro business, která nabídne odpovědi na aktuální a často řešené otázky: Jaké jsou aktuální trendy v oblasti datových center a jak je optimálně využít pro vlastní prospěch? Jak si zajistit odpovídající služby datových center? Podle jakých kritérií vybírat dodavatele služeb? Jak volit vhodné součásti infrastruktury při budování či rozšiřování vlastního datového centra? Jak efektivně datové centrum spravovat? Jak co nejlépe eliminovat možná rizika? apod. Příznivci LinuxSoftu mohou při registraci uplatnit kód LIN350, který jim přinese zvýhodněné vstupné s 50% slevou.
Přidat komentář
6.11.2018 2:04 /František Kučera Říjnový pražský sraz spolku OpenAlt se koná v listopadu – již tento čtvrtek – 8. 11. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma umění a technologie, IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář
4.10.2018 21:30 /Ondřej Čečák LinuxDays 2018 již tento víkend, registrace je otevřená.
Přidat komentář
18.9.2018 23:30 /František Kučera Zářijový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 20. 9. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář
9.9.2018 14:15 /Redakce Linuxsoft.cz 20.9.2018 proběhne v pražském Kongresovém centru Vavruška konference Mobilní řešení pro business.
Návštěvníci si vyslechnou mimo jiné přednášky na témata: Nejdůležitější aktuální trendy v oblasti mobilních technologií, správa a zabezpečení mobilních zařízení ve firmách, jak mobilně přistupovat k informačnímu systému firmy, kdy se vyplatí používat odolná mobilní zařízení nebo jak zabezpečit mobilní komunikaci.
Přidat komentář
12.8.2018 16:58 /František Kučera Srpnový pražský sraz spolku OpenAlt se koná ve čtvrtek – 16. 8. 2018 od 19:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát jsou tématem srazu databáze prezentaci svého projektu si pro nás připravil Standa Dzik. Dále bude prostor, abychom probrali nápady na využití IoT a sítě The Things Network, případně další témata.
Přidat komentář
16.7.2018 1:05 /František Kučera Červencový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 19. 7. 2018 od 18:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát bude přednáška na téma: automatizační nástroj Ansible, kterou si připravil Martin Vicián.
Přidat komentář
Více ...
Přidat zprávičku
Poslední diskuze
31.7.2023 14:13 /
Linda Graham iPhone Services
30.11.2022 9:32 /
Kyle McDermott Hosting download unavailable
13.12.2018 10:57 /
Jan Mareš Re: zavináč
2.12.2018 23:56 /
František Kučera Sraz
5.10.2018 17:12 /
Jakub Kuljovsky Re: Jaký kurz a software by jste doporučili pro začínajcího kodéra?
Více ...
|