![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 64 Pomógł: 0 Dołączył: 13.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
RewriteEngine On
RewriteRule ^([a-zA-Z]+).html$ index.php?id=$1 RewriteRule ^([a-zA-Z]+)-([0-9]+).html$ index.php?id=$1&mid=$2 RewriteRule ^photo-([0-9]+).html$ index.php?id=$1&gid=$2 RewriteRule ^logowanie.html$ logowanie.php Witam, powyżej mam przykład mojego pliku .htaccess 2 linia działa idealnie 3 linia też działa dobrze (www.judo.sulkowice.pl/news-62.html wywołuje www.judo.sulkowice.pl?id=news&mid=62) 4 linia nie działa. Po wpisaniu www.judo.sulkowice.pl/photo-7.html tak jakby nie jest rpzekazywana duga zmienna. Jeżeli chciałem zamienić znak rozdzielający zmienne z "-" an "/" to nie działało nic. Dlaczego tak jest? Przypuszczam że te reguły są dobrze napisane, więc coś jest nie tak w photo.php. Ale gdzie mogę znaleźć błąd? Nie oczekuję gotowych odpowiedzi. Chciałbym to zrozumieć co jest nie tak. Pozdrawiam Łukasz |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%) ![]() ![]() |
Eee a gdzie ty niby przekazujesz tą drugą zmienną którą ma być gid ?
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 64 Pomógł: 0 Dołączył: 13.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
RewriteRule ^photo-([0-9]+).html$ index.php?id=$1&gid=$2
Tutaj ([0-9]+) i dalej tutaj: index.php?id=$1&gid=$2 Ten post edytował lukas0987 29.03.2007, 20:27:39 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 22 Pomógł: 0 Dołączył: 28.03.2007 Skąd: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Ja bym napisał to tak:
RewriteEngine On RewriteRule ^([a-zA-Z]+).html$ index.php?id=$1 RewriteRule ^(\w+(?<!photo))-([0-9]+).html$ index.php?id=$1&mid=$2 RewriteRule ^photo-([0-9]+).html$ index.php?id=photo&gid=$1 RewriteRule ^logowanie.html$ logowanie.php -------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 64 Pomógł: 0 Dołączył: 13.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
Niestety po wrzuceniu tego co mi napisałeś nie otworzy mi strony głównej.
NIe bardzo wiem jaki tu zabieg wykonałeś i w jakim celu? |
|
|
![]()
Post
#6
|
|
![]() Admin Techniczny Grupa: Administratorzy Postów: 2 071 Pomógł: 93 Dołączył: 5.07.2005 Skąd: Olsztyn ![]() |
RewriteRule ^photo-([0-9]+).html$ index.php?id=$1&gid=$2
na RewriteRule ^photo-([0-9]+).html$ index.php?id=photo&gid=$1 chodzi o to że wszelkie wyrażenia zwracają wartość w kolejności ich wywołania czyli jak tu masz tylko ([0-9]+) to to zwraca $1 a nie $2 |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 64 Pomógł: 0 Dołączył: 13.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
Już to rozumiem, bo przecież "photo" to nie zmienna, a "([0-9]+)" to jest zmienna pierwsza. Czyli w moim wypadku gid.
Proste jak drut (tyle że sam to bym chyba przez miesiąc na to nie wpadł smilingsmiley.gif ) Jeszcze mnie jedna rzecz męczy, ale nie wiem czy na to jest rozwiązanie. ^photo-([0-9]+).html$ index.php?id=photo&gid=$1 W moim przypadku jeżeli tylko zmienię znak "-" na "/" to już wszystko się wysypuje. Jakby ktoś miał chwilkę czasui byłby mi w stanie pomóc to z góry wielkie dzięki. Ja już nie mogę z tym: Przecież tu zaraz oszaleję. Dlaczego jeśli wrzucę coś takiego to news-62.html chodzi, a photo-17.html nie? RewriteEngine On RewriteRule ^([a-zA-Z]+).html$ index.php?id=$1 RewriteRule ^([a-zA-Z]+)-([0-9]+).html$ index.php?id=$1&mid=$2 RewriteRule ^photo-([0-9]+).html$ index.php?id=photo&gid=$1 |
|
|
![]()
Post
#8
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 258 Pomógł: 16 Dołączył: 21.09.2004 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
przenoszę na serwery www
-------------------- -------------
------ |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 2 592 Pomógł: 445 Dołączył: 12.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Może dlatego, że jak używasz "news-62.html" to 'news' to jest wartość jednej zmiennej a '62' drugiej a przy photo - 'photo' nie jest wartością zmiennej, jest nią tylko '17'
wydaje mi się, że te z photo nie jest w ogóle Ci potrzebne możesz przecież używać tego z news: Kod RewriteRule ^([a-zA-Z]+)-([0-9]+).html$ index.php?id=$1&mid=$2 i tutaj rób sobie link: Kod www.judo.sulkowice.pl/photo-62.html będziesz miał w zmiennej id = photo; a w mid = 62; teraz tylko switch w zależności od id i lecisz z tym.. ;-) -------------------- |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 1 597 Pomógł: 30 Dołączył: 19.02.2003 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
RewriteRule ^photo-([0-9]+).html$ index.php?id=$1&gid=$2
daj tą linicjkę przed RewriteRule ^([a-zA-Z]+)-([0-9]+).html$ index.php?id=$1&mid=$2 -------------------- Zapraszam na mój php blog, tworzenie stron.
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 64 Pomógł: 0 Dołączył: 13.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
RewriteEngine On
RewriteRule ^([a-zA-Z]+).html$ index.php?id=$1 RewriteRule ^photo-([0-9]+).html$ index.php?id=photo&gid=$1 RewriteRule ^([a-zA-Z]+)-([0-9]+).html$ index.php?id=$1&mid=$2 RewriteRule ^logowanie.html$ logowanie.php Ta wersja działa idealnie. Teraz mam tylko problem z "/" Chciałbym zamienić sperator zmiennych z "-" na "/" Ten post edytował lukas0987 1.04.2007, 13:33:22 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 21.06.2025 - 11:56 |