Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SQL][PHP]Ładne adresy i drzewka sql (n do n)
Forum PHP.pl > Forum > Przedszkole
nowy_pehapowiec
Hej,

jak konstruować przyjazne adresy przy dość rozbudowanych drzewkach sql?
Czy adres:
www.strona.com/pl/produkty/kategoria1/podkategoria3/podpodkategoria8/produkt17

będzie dobry?
Apropo realizacji, do wyświetlenia strony potrzebuje identyfikatorów kategorii, podkategorii, podpodkategorii, produktu. Czyli 1/3/8/17. Problem jest z jednoznaczną zamianą nazw na identyfikatory. Bo nazwy mogą się powtarzać i podpodkategoria8 może mieć taką samą nazwę jak podpodkategoria6. Jak wtedy z takiego adresu ładnego z nazwami otrzymać poprawne identyfikatory, żeby móc wyświetlić odpowiednią stronę?

Jak to się robi?

pozdro
Mustava
Może tak? (nadaj kategoriom i podkategoriom id)
www.strona.com/pl/produkty.php?kat=1&podkat=27&podpodkat=8&produkt=17
nowy_pehapowiec
Wszystkie kategorie i podkategorie, podobnie jak produkty maja unikalne identyfikatory.

Tylko, że chyba lepiej byłoby mieć adres z nazwami a nie numerkami:
www.strona.com/telewizory/plazmowe/32"/super model ABC1519
zamiast
www.strona.com/1/3/8/17

Tylko, że nazwy nie są unikalne i nie wiem jak sobie z tym poradzić.

pozdro
Crozin
Jeżeli produkt może należeć tylko do jednej kategorii to w adresie przekazujesz jego id: /32/telewizory/plazmowe/superModelABC.html
Jeżeli produkt może być w wielu kategoriach to przekazujesz zarówno id kategorii z której otworzono produkt jak i produktu: /32_64/telewizory/plazmowe/superModelABC.html

Przy czym w przypadku tego drugiego zapisu trzeba jeszcze rozważyć sytuację, gdzie link może nie zawierać id kategorii - wtedy trzeba odczytać jego podstawową kategorię czy coś takiego (takie coś może występować wszędzie tam, gdzie dostęp do produktu jest nie przez przeglądanie kategorii: np. jakieś polecane, nowo dodane itp.)
nowy_pehapowiec
Crozin jest tak jak napisałem relacja n do n, czyli produkt może być wszędzie. Czy da się jakoś obejść przekazywanie numerów identyfikatorów? Bo z tymi numerami to adresy nie będą ani ładne ani przyjazne. Jakieś pomysły?
Crozin
To tylko adres... ma on być przyjazny dla użytkownika, aplikacji, robota Googlea i innych w takiej właśnie kolejności w jakiej wypisałem. Żaden użytkownik nie będzie ręcznie wpisywać tego, a te dodatkowe dwie liczby nie są problemem, a znacząco ułatwiają pracę dla aplikacji. Pod względem SEO jeżeli będzie tam nazwa produktu i ewentualnie ścieżka kategorii też będzie dobrze.
nowy_pehapowiec
To może od razu tak:
www.strona.com/1-nazwa_1/3-nazwa_3/8-nazwa_8/17-nazwa_17
albo www.strona.com/1/3/8/17,telewizory/plazmowe/32"/super model ABC1519

Co o tym myślisz? Bo mi najwygodniej byłoby mieć w adresie adres ip produktu w drzewku sql.
Bo jeśli dobrze rozumiem. To przy pomocy mod_rewrite mam jakoś tak zaczarować adresy, żeby mi zniknęły nazwy zmiennych i index.php. I potem już z pozopmu skryptów php mam obrobić adres wyciągając z niego odpowiednie identyfikatory, tak żebym wiedział co wyświetlić? Mniej więcej o to chodzi?

A i jeszcze jedno czym separować? Ukośnik, przecinek, coś innego?


pozdro
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.