![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 31.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Chciałbym skorzystać z mod_rewrite na stronie http://www.stema.pl
Mam jednak parę pytań... Chciałby aby strona http://www.stema.pl/index.php?id=1 wyświetlała się tak: http://www.stema.pl/dachy.html A np strona http://www.stema.pl/index.php?id=1&sub_id=0 o tak: http://www.stema.pl/dachy/gonty_bitumiczne.html Inne podstrony na tej samej regule. Czyli żeby w adresie pokazywał się tekst taki jak w menu głównym. Czy muszę wszystko pisać w htaccess po kolei (podstron jest około 110) czy dało by się to jakoś inaczej wykombinować?? Bo pisania tego typu: Rewriterule dachy/gonty_bitumiczne.html http://www.stema.pl/index.php?id=1&sub_id=0 Będzie trochę dużo... Czy mógłbym to jakoś zrobić inaczej? -------------------- gonty bitumiczne
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 112 Pomógł: 20 Dołączył: 10.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Z mojego doświadczenia wynika, że najbardziej uniwersalne będzie przerzucenie decyzji o tym co faktycznie wyświetlić z Apache na php.
Używam w .htaccess następującej konfiguracji: Kod RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-s RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?resolve=$1 [NC,QSA,L] Dzięki temu, zawsze w $_GET['resolve'] mam cały podany URL a w reszcie tablicy jeszcze ewentualne parametry. Dla zapytania http://www.stema.pl/dachy/gonty_bitumiczne.html, przy takiej konstrukcji .htaccess wartość $_GET['resolve'] będzie dachy/gonty_bitumiczne.html. Teraz, pozostaje ci napisanie kawałka kodu w php, który przetłumaczy takie zapytanie na odpowiednie id i sub_id i dalej twoje skrypty powinny działać jak należy. Menu zapewne masz gdzieś ustalone (DB, tablica, plik ini) - polecam dodanie do opisu danych dla menu pola meta_name czy coś w tym stylu. W tym polu będziesz trzymał informacje jakich danych użyć w URLu. Przykładowo, dla pozycji w menu "Gonty bitumiczne", wartość meta_name będzie gonty_bitumiczne. Dalej już wszystko jasne - tłumaczysz na podstawie danych z zapytania i wyświetlasz co trzeba :) pozdr. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 14:41 |