Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][mod_rewrite]Pytanie początkującego, zamiana linków
benusso
post 23.02.2010, 19:57:56
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 5.03.2006

Ostrzeżenie: (0%)
-----


Witam

Chciałbym wdrożyć to w moim serwisie, o ile mogę znaleźć teksty na temat reguł, to nie mogę zrozumieć jednej rzeczy

dodałem do swojego htaccessa regułę

  1. Options FollowSymLinks
  2. RewriteEngine On
  3.  
  4. RewriteRule ^index.html$ index.php [L]


No i nie zamieniło mi to wcale linków na stronie, tam gdzie mam index.php mam nadal index.php, gdy wczytuje index.php też w pasku adresu jest index.php, wnioskuje zatem że działa to w ten sposób iż po wpisaniu w pasku adresu index.html będzie widoczny index.html a otworzy się index.php.

Idąc dalej, mając linki generowane w php w serwisie, posiadajace powiedzmy do 2 zmiennych czyli np

index.php?idprofil=1&zdjecie=5

gdzie nazwa uzytkownika z profilem o id=1 to benusso a zdjecie 5 to id zdjecia w bazie, php generuje mi takie linki w galeri, a chcialbym powiedzmy zeby adres ten wygladal tak

benusso-zdjecie-5.html

to co powinienem zrobić ?

Czy powinienem rozpocząć pracę od zmiany kodu php, tak zeby generowal mi pole <a> tak <a href=benusso-zdjecie-5.html> a nie tak <a href=index.php?idprofil=1&zdjecie=5>

a później w htaccessie dopisac regule odczytu benusso-zdjecie-5.html jako index.php?idprofil=1&zdjecie=5 questionmark.gifquestionmark.gif


Prosze o pomoc.

Pzdr.
Go to the top of the page
+Quote Post
Blame
post 23.02.2010, 20:10:04
Post #2





Grupa: Zarejestrowani
Postów: 678
Pomógł: 124
Dołączył: 26.09.2009

Ostrzeżenie: (0%)
-----


Tak, .htaccess nie zmienia linków na stronie, on tylko przepisuje te wklepane w pasek. Linki w kodzie musisz zmienić ręcznie.


--------------------
Go to the top of the page
+Quote Post
Rysh
post 23.02.2010, 20:12:41
Post #3





Grupa: Zarejestrowani
Postów: 821
Pomógł: 111
Dołączył: 11.09.2006
Skąd: Biała Podlaska

Ostrzeżenie: (0%)
-----


Chyba innego wyjścia nie ma żeby raptem linki stały się *.html musisz zmienić w kodzie.


--------------------
Go to the top of the page
+Quote Post
benusso
post 23.02.2010, 21:10:01
Post #4





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 5.03.2006

Ostrzeżenie: (0%)
-----


A powiedzcie mi

  1. RewriteRule ^profil-([^-]+)-([^-]+).html$ profile.php?login=$1&profil=$2 [L,QSA]


ciąg znaków ([^-]+) zastępuje zmienną $1 ? to jest taka zasada że zmienne liczone są od lewej i pod pierwszy ciąg znaków ([^-]+) w WYRAŻENIU podstawiana jest zawsze zmienna $1 i jej nazwa musi być dolar jeden, czy po prostu pierwsza zmienna z ZAMIENNIKA, patrząc tak

  1. RewriteRule WYRAŻENIE ZAMIENNIK [FLAGI]


questionmark.gif

Na jakiej zasadzie podstawiane są zmienne z ZAMIENNIKA do WYRAŻENIA ?

Ten post edytował benusso 23.02.2010, 21:10:47
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: 14.08.2025 - 00:06