![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 12.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
z góry mówię, że jeżeli pomyliłem kategorię to proszę o przeniesienie, nie wiedziałem gdzie to dać. A więc mam problem, chcę skorzystać z Mod_Rewrite na stronie no i jeden działa, a dwa nie. ![]() Mój .htaccess : RewriteEngine on RewriteRule ^index,([0-9])$ index.php?set=$1 RewriteRule ^index,([0-9]),([a-zA-Z]+)$ index.php?set=$1&id=$2 RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3 RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&show=$4 RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&pokaz=$5 RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&polecamy=$6 No i te 2 ostatnie linijki nie chcą działać, ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 744 Pomógł: 118 Dołączył: 14.02.2009 Skąd: poziome Ostrzeżenie: (0%) ![]() ![]() |
a co to ma byc:
RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&pokaz=$5 RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&polecamy=$6 powinno byc: RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&pokaz=$4 RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&polecamy=$4 ale wtedy nie ma sensu bo regulka 1 to to samo co 2 pokaz budowe linku, jaki ma byc obslugiwany przez te 2 ostatnie reguly -------------------- śmieszne obrazki
Kryzys: Ser jem spleśniały, wino piję stare i samochód mam bez dachu.. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 12.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
No przykładowo mam link:
?set=1&id=info&get=welcome index,1,info,welcome - bo gdy dam w mod_rewrite / i w link / to mi obrazki się nie wczytują ![]() w dwóch ostatnich linijkach jest tak: ?set=1&id=info&get=newsy&pokaz=tytul_newsa index,1,info,newsy,tytul_newsa ?set=1&id=info&get=polecamy&pokaz=nazwa index,1,info,polecamy,nazwa Gdy dam tak te regułki $4 i $4 to też nie działa ;/ |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 744 Pomógł: 118 Dołączył: 14.02.2009 Skąd: poziome Ostrzeżenie: (0%) ![]() ![]() |
?set=1&id=info&get=newsy&pokaz=tytul_newsa
index,1,info,newsy,tytul_newsa ?set=1&id=info&get=polecamy&pokaz=nazwa index,1,info,polecamy,nazwa RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&pokaz=$4 pozdaj linka gdzie CI te obrazki zle dzialaja i wywal to: RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&show=$4 RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&pokaz=$5 RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&polecamy=$6 Ten post edytował maly_swd 11.07.2009, 20:46:33 -------------------- śmieszne obrazki
Kryzys: Ser jem spleśniały, wino piję stare i samochód mam bez dachu.. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 12.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Jak wywalę to:
RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&show=$4 RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&pokaz=$5 RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&polecamy=$6 To nie będą mi działały dwa działy. :// Bo zrobione jest to tak... index.php?set=1&id=info&get=newsy&show=tytul_newsa No i ta zmienna get otwiera plik newsy, w którym jest kolejna zmienna show i bierze pliki z innego katalogu (w tym przypadku katalog newsy). W zmiennej get są 3 pliki, które robią kolejną zmienną do innych folerów, nazywają się one newsy, artykuly, polecamy. Ich zmienne to show, pokaz, polecamy. Co do obrazków, jak mam tak: RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&polecamy=$6 ( index,1,info,polecamy,bleble ) to wszytko działa, obrazki są. A gdy zrobię tak: RewriteRule ^index/([0-9])/([a-zA-Z]+)/([a-zA-Z]+)/([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&polecamy=$6 ( index/1/info/polecamy/bleble ) to niestety nie działają obrazki, nie wczytuje ich. ![]() |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
-------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 12.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
W takim razie jak mam poprawić te reguły, aby było dobrze?
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Tak, aby nie były wszystkie takie same i parser wiedział, którą masz na myśli.
Żeby Ci lepiej wytłumaczyć, z Twojego kodu: Kod RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ Jak widzisz, to są trzy takie same wzorce; skąd interpreter ma wiedzieć, której użyć, skoro są identyczne? Musisz je tak przebudować, aby czymś się różniły adekwatnie do tego, czego potrzebujesz. -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 12.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Przykładowo:
RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-z]+)$ RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-z0-9+)$ Może być? Wtedy w regułce nr dwa nie będzie żadnych dużych liter, a w regułce 3 otworzą się pliki które mają litery i cyfry (np. bla123)? @edit: Teraz mam tak: RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)$ index.php?set=$1&id=$2&get=$3&show=$4 RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-zA-Z]+)([0-9]+)$ index.php?set=$1&id=$2&get=$3&pokaz=$4 RewriteRule ^index,([0-9]),([a-zA-Z]+),([a-zA-Z]+),([a-z][0-9][0-9]+)$ index.php?set=$1&id=$2&get=$3&polecamy=$4 No i niestety nie działa. :/ proszę o jakąś pomoc/wskazówkę. Ten post edytował Mlody993 14.07.2009, 19:25:08 |
|
|
![]()
Post
#10
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Nie może być, bo nie precyzujesz, o który dział chodzi.
Jak przykładasz miarkę przy budowie domu, to do znanych punktów odniesienia, nie? ![]() -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 12.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Ehh.. już tracę na to silę.
![]() Proszę o jakąś wskazówkę, bo kombinuje męczę się i nic z tego ![]() @edit: Aha, chyba wiem o co chodzi. Po prostu zamiast jednego ([a-z-A-Z]+) dać nazwę pliku jaki jest wczytywany ? ![]() Ten post edytował Mlody993 14.07.2009, 19:30:35 |
|
|
![]()
Post
#12
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
To nie zabieraj się na to, skoro nie masz cierpliwości.
![]() Twoje wzorce wskazują po prostu na niemal to samo, poczytaj o wyrażeniach regularnych, bo nie mamy bazy, na której moglibyśmy się opierać w dyskusji. -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 12.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Ale po co ja mam to wszystko czytać jak nawet nie wiem w czym leży problem. :/
Nikt nie ma pomysłu?? :/ Czytałem o tym całym Mod rewrite no i nic :/ |
|
|
![]()
Post
#14
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Czytałeś? I wiesz chociaż, o czym ja pisałem?
-------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 12.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
No, że się powtarzają i nie wie o które mi chodzi. ; p
Ale jak to zastąpić innym... Nie mam pomysłu, jak to rozwiązać. :/ |
|
|
![]()
Post
#16
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
No właśnie, nie wie.
Hmm, jak by Ci to inaczej wytłumaczyć... Po pierwsze, kurs rewrite, to podstawa, wyrażeń regularnych też. Ale zwróć uwagę na coś takiego: ogólnie regexpy mają to do siebie, że nie wyciągają danych "ściśle", tylko jak w wypracowaniach. [; Tzn. w ten sposób, masz np. wyrażenie "spomiędzyA(wyciągnij wszystko, co zawiera litery...)spomiędzyB" - w Twoich trzech wzorcach jest 3x: "spomiędzyA(wyciągnij wszystko, co zawiera litery...)" - pierwszy wzorzec spełni wszystkie trzy przypadki, gdyż nawet jak wstawisz "spomiędzyB" do sprawdzanego ciągu (nie wzorca!), to spełni on warunki pierwszego przypadku i nie będzie co przetwarzać w następnych. Co musisz zrobić: musisz przerobić wzorce tak, aby każdy z nich miał inną kanwę, w naszym przypadku: ma różnić się tym "spomiędzyX", co - podpowiedź - ma u Ciebie wskazywać na konkretny dział. -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 12.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Nie no nie mogę... :/ Chyba sobie to odpuszczę. :/
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 00:30 |