Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][mod rewrite] Problem z regułą...
-novum-
post 11.05.2008, 13:13:59
Post #1





Goście







Witam,

Mam na swojej stronie taki plik, który zawiera pewne zmienne get:

Kod
/pokazuj.php?art=$tytul_artu&id=$id_artu


czyli np.

Kod
/pokazuj.php?art=oto_jest_tytul_art_1&id=5


Chciałbym go skrócić za pomocą mod rewrite do:

Kod
/pokazuj,oto_jest_tytul_art_1,d5.html.


Próbowałem już kilku reguł, ale niestety gdzieś robie błąd i strona dalej się niw wyświetla. Proszę zatem kogoś z Was o pomoc. Jak napisać taką regułę? Moja (niedziałająca reguła):

Kod
RewriteRule ^pokazuj,[a-z0-9\-\_]+,([0-9]+)\.html$ pokazuj.php?title=$1&id=$2


Poza tym, chciałbym zapytać, za pomocą jakiej funkcji w php zmienić w ciągu pewne znaki na inne. Potrzebne mi to będzie to budowania poprawnych linków. Dajmy na to, tytuł ma postać: Tekst który możesz Przeczytać. Zmiana wielkości liter to pikuś, ale chciałbym także aby polskie znaki były wymieniane na te bez ogonków, a znaki spacji na '_'. Ostatecznie string będzie miał wyglądac tak: tekst_ktory_mozesz_przeczytac. Za pomocą jakiej funkcji można to zrobić?
Go to the top of the page
+Quote Post
phpion
post 11.05.2008, 13:19:44
Post #2





Grupa: Moderatorzy
Postów: 6 070
Pomógł: 860
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Chyba brakuje Ci () oraz "d" w regułce. Link masz postaci:
/pokazuj,oto_jest_tytul_art_1,d5.html.
a twrozysz regułę bez "d".
RewriteRule ^pokazuj,[a-z0-9\-\_]+,([0-9]+)\.html$ pokazuj.php?title=$1&id=$2
Spróbuj tak:
Kod
RewriteRule ^pokazuj,([a-z0-9\-\_]+),d([0-9]+)\.html$ pokazuj.php?title=$1&id=$2


Co do drugiego pytania: musisz takową funkcję napisać sobie sam. Nie jest to trudne - zwykłe str_replace" title="Zobacz w manualu PHP" target="_manual.

Ten post edytował phpion 11.05.2008, 13:20:25
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 29.03.2024 - 11:58