![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 20.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
niedawno postanowilem sie troche podszkolic w programowaniu obiektowym i napisac aplikacje wykorzystujac MVC, troche glowkowalem i wszystko jakos ogarnalem, chodiz fajnie... z tym ze nie chce pozniej sie bawic w tworzenie przyjaznych URL-i gdy juz wszystko bedize gotowe... wiec postanowilem to zrobic teraz, zanim stworze cala strukture podstron... W kazdym razie przejdzmy do wlasciwego problemu, jak mi wiadomo gdy opieramy sie na MVC wywolanie jakiejs akcji tudziez podstrony polega na podaniu kontrollera i pozniej opcjonalnie akcji i ewentualnie dodatkowych parametrow. a wiec np. jezeli na stronie chcialbym wyswietlic jakas kategorie, wyciagana z bazy, URL wygladal by mniej wiecej tak : "?controller=kategorie&action=pokaz&kat=agd" w takim przypadku stworzenie przyjaznych linkow w formie "/kategorie/pokaz/agd/" nie jest problemem... jednak zalezalo by mi, jezeli jest to mozliwe wogole, aby link mial postac duzo prostsza... a mianowicie nie pokazywal kontrollera i akcji, a bezposrednio kategorie: "/agd/" . Wydaje mi sie ze bylo by to dobre rozwiazanie, zwlaszcza gdyby w linku byla kategoria i podkategoria, nie mowiac jzu o przypadku gdyby ich nazwy skladaly sie z kilku slow, gdyby do tego jeszcze dorzucic nazwe kontrolera i akcji, link moglby urosnac do zbyt duzych rozmiarow.... a wiec moje pytanie brzmi, czy jest taka mozliwosc? bo nie moge wymyslic, jak w takim razie router rozpoznal by ktory kontroller i ktora akcje ma odpalic... |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Cytat Po mojemu to Wasz sposób jest mało elegancki (widać zmienne np. w paginatorze czy galerii zdjęć) a w dodatku trudniejszy w programowaniu A u ciebie nie widac? Masz linki typu "siodma_strona_artykulu_o_ziemniakach.html" ? albo "wyszukiwanie_ziemniakow_warszawa_1990-2000.html" ? Cytat i doklejony po "?" numer strony już nie wygląda ładnie. I kto ma określać gdzie, kiedy kończy się nice url a zaczyna "?"?Co trzymać w niceurl i bazie a co nie? To chyba proste - jest max JEDEN "?" w URLu. parse_url + parse_str i po problemie. Mielismy wczesniej paginacje jako /komputery/laptopy/sony/3.html ale pozniej dochodzila masa innych parametrow do ograniczania przegladania produktow i nr strony przeszedl do QUERY_STRINGa. Cytat I jak tworzymy takie linki? Pobieramy nice url z bazy a query string doklejamy? W bazie trzymam URL do kategorii produktow, do pojedynczego produktu,itd. Wiec jak mam 3cia strone kategorii to URL do kategorii pobieram z bazy /komputery/laptopy/sony.html i doklejam "?page=3" Cytat - algorytm odczytujący URLe No to mam pytanie: jak wyglada utworzenie URLa dla produktu sony_vaio_x3 w kategorii /komputery/laptopy/sony ? Używasz za każdym razem drzewa kategorii? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.10.2025 - 07:55 |