Ad.2. - samozrejme jen v pripade, ze mate cely website dynamicky generovany, jinak to postrada smysl. Na druhou stranu se jeste podbizi reseni nechat staticke *.html stranky byt tak, jak jsou a nechat zpracovavat PHPckem soubory s koncovkou *.htm. To by vyhledavacum mohlo chutnat :-)
Ad.3. - autor zrejme mel na mysli dotaz napr. (pri vypisu clanku) SELECT titulek, perex, clanek FROM clanky WHERE url='$url'. Kriterium LIKE zatezuje databazi pomerne znacne, o vyrazu LIKE '%neco%' ani nemluve. Krom toho muzou byt vysledky znacne nepresne.
Problemy s cestinou ? A co vam brani mit u clanku v databazi pole "url", kde budete mit rekneme titulek clanku tak, aby jste mel pri hledani 100% match ? Napr. "titulek-zajimaveho-clanku". To same budete mit v URL, funguje to spolehlive.
k tomu selectu.
Staci kdyz pouzijete
SELECT * FROM dokumenty WHERE uri_id = '$cool_url';
a nad uri_id zindexujete.
Pak nejsou clanky identifikovany cislem, ale textovym id. Pri pouziti indexu se zatez db priliz nezvysi.
Optimalni je do rewritu zanest jeste dalsi informace (napr. v jake sekci se clanek zobrazuje ap.) a ty pri volani clanku rozebrat (napr. pokud se nechcete starat o to, aby uri_id bylo unikatni pro cely site. Pokud url obsahuje i id sekce, pak staci kdyz je uri_id unikatni jen pro danou sekci.)
jinak clanek fakt hroznej. hlavne po fakticke strance a to nekomentuju ten zaver :(
Co se me tyce, tak si ty rady protireci.
1) vyhledavace nerady cekaji, je dobre aby byl server co nejrychlejsi.
2) zmente si koncovky PHP skriptu na HTML a nastavte server aby je zpracovaval jako normalni PHP (nebo jakykoliv jiny jazyk)
3) pouzivejte mod_rewrite a adresy typu www.example.com/novinky/takto-ma-vypadat-cool-uris/
No jo, jenze doporucene rady 2 a 3 udelaji prave to, ze se server o neco zpomali :-(
Pokud serveru nastavime ze ma vsechny dokumenty zpracovavat jako skripty, tak bude zbytecne zpracovavat i opravdu staticke HTML. Coz samozrejme znamena zvetseni zateze serveru.
Pokud budu pouzivat modni adresy s mod rewrite, tak se zase zvysi zatez databaze. Nebo mi chcete rict ze
SELECT * FROM dokumenty WHERE nadpis LIKE '$cool_url'
je rychlejsi nez
SELECT * FROM dokumenty WHERE id = '$id_clanku'?
To uz ani nezminuji moznost problemu s cestinou a velikosti pismen pri zpracovavani exotickych vyhledavaci (i kdyz on s tim ma problemy treba i cesky Toplist) a vlastne i moznou duplicitou nazvu clanku.