![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 8.08.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam, potrzebuję zrobić obsługe mod_rewrite przy takiej konstrukcji:
http://127.0.0.1/framework/index.php?contr...mp;action=index i wymieniane Index i index Zrobiłem tak: Options FollowSymLinks RewriteEngine On RewriteRule ^([^-]+)/([^-]+)$ index.php?controller=$1&action=$2 [L] I przy kontrukcji gdzie mam sztywno Index/index, Index/register itd jest ok, ale mod_rewrite musi obslugiwac tez to gdy slash jest na koncu np Index/index/ czyli i tak i tak. Dodatkowo zmienna controller moze wystapic sama, bez action co tez musi zostac obsluzone. controller i action moga zwierac tylko litery(male i duze) i cyfry. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Może coś w tym stylu:
Cytat RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)?\/?$ index.php?controller=$1&action=$2 [L]
Ten post edytował !*! 23.06.2012, 15:16:13 -------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 8.08.2011 Ostrzeżenie: (0%) ![]() ![]() |
ok, działa z tym slashem, ale co jeśli controller wystepuje sam? wtedy nie znajduje drugiej zmiennej i jest 404 co zrobic?
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Co znaczy że wpisujesz sam? Chodzi Ci o sytuacje gdy URI niczego nie zawiera?
Cytat RewriteRule ^([a-zA-Z0-9]+)?\/?([a-zA-Z0-9]+)?\/?$ index.php?controller=$1&action=$2 [L] ? - oznacza że może wystąpić lub nie. -------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 8.08.2011 Ostrzeżenie: (0%) ![]() ![]() |
Zrobiłem tak:
RewriteRule ^([a-zA-Z0-9]+)/?([a-zA-Z0-9]+)?/?$ index.php?controller=$1&action=$2 [L] i już działa. Dzieki za pomoc ![]() A tak w ogóle to czemu dałeś backslash przed slashem u siebie w przykładzie? bez też działa...hm?? |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Z przyzwyczajenia, odnośnie wyrażeń regularnych, znaki specjalne poprzedza się backslashem, jednak nie jest to wymagane.
-------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 12.06.2025 - 18:29 |