Autor Zpráva
Hašin
Profil
Zdravím.
Mam prosbu o radu ohledne routovani v MVC ... Mam stranky, ktere obsahuji mnoho produktu a mnoho kategorii ... Myslim, ze je dost podobna strukture treba MALL.CZ. Rád bych používal v URL pouze klicova slova, ale nechci pouzivat mod_rewrite a delat pro kazdou kategorii (jsou jich desitky) kontroler postrada smysl tohoto reseni.

Jde mi o tohle:
Pokud nemám nikde v url "id" produktu a "id" kategorie a tim padem ho nepredavam dotazu pro databazi, jak produkt/kategorii v databazi najdu?

Napadlo me pro kazdy produkt pouzit v databazi dalsi sloupec, kde bude ulozena url a hledat podle tohoto sloupce, ale pro me to neni uplne databazove koser. Pri vetsi databazi ji to ppod zpomali a taky bude slozitejsi jeji sprava.

Proto se ptam, jaka je spravne reseni treba i s pomoci JScriptu (videl jsem casto ulozena id treba v atributu id html elementu, ale jak ho z toho pak dostat do php skriptu vubec netusim).

Dekuji za kazdou radu nebo pripominku
Tori
Profil
Tak či tak musíte provést dotaz do DB, kterým zjistíte kategorii a ověříte, že požadované ID existuje. To už je pak jedno, jestli to vyhledáváte podle ID nebo jiného sloupce. Na tom sloupci s částí url by měl být unikátní klíč.
Joker
Profil
Hašin:
Pokud nemám nikde v url "id" produktu a "id" kategorie a tim padem ho nepredavam dotazu pro databazi, jak produkt/kategorii v databazi najdu?
Blbě.
V URL musíte mít „id“ toho záznamu. Samozřejmě to tedy nemusí být zrovna forma čísla a případně může „id“ být přímo URL, jak píšete v dalším odstavci.

V každém případě URL je to, co má identifikovat tu stránku a vymýšlet identifikování stránky jiným způsobem abyste v URL mohl mít nějaký SEO balast je nesmyslné a je to cesta do pekel.
Identifikujte položky podle URL.
Hašin
Profil
Hmm, to jsem si tak nějak myslel, jen jsem se nechtěl dopustit nějakého zvěrstva ...

Každopádně moc Vám oběma děkuji za cennou radu

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0