Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] modrewrite a gety
krzystyn
post
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 1
Dołączył: 2.04.2011

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


witam
zrobilem sobie regulki w htaccess i teraz mam ladne urle, ale wtedy oczywiscie powstaje problem z pobieraniem danych przez GETa

jak bylo:
http://strona.pl/show.php?id=3

to id mozna bylo pobrac $_GET['id']

a jak jest http://strona.pl/show,3.html

to najpierw musze pobrac REQUESTa, potem explode przecinek, a potem jeszcze kolejny explode kropka i dopiero wtedy mam wyciagniete ID, czyli 3. a to i tak skrocona wersja i niezbyt pewna. wystarczy ze zrobimy show,id,3.html i znowu kolejne regulki.

a moze jest jakis latwiejszy sposob na to?

przy okazji pytanie jeszcze jedno - jaki wyglad adresow stosowac najlepiej? wiem ze to odemnie zalezy, ale np jaki preferuje google?

adres.pl/show,id,3.html
adres.pl/show/id/3
adres.pl/show-id-3
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
krzystyn
post
Post #2





Grupa: Zarejestrowani
Postów: 26
Pomógł: 1
Dołączył: 2.04.2011

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


to juz calkiem inny system, wolalbym to zrobic tak jak mam teraz, wiec jak to rozwiazac?

panowie mam kolejny problem (IMG:style_emoticons/default/sad.gif)

Kod
Options +FollowSymLinks +ExecCGI

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule show/(.*) index.php/templates/show.php?id=$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /test/index.php?$1 [L]
</IfModule>


linki generuje w ten sposob:
  1. <a href="show/<?php echo $post['id'] ?>.html"> <?php echo $post['tytul'] ?> </a>



i teraz jak wejde w np http://localhost/test/show/1.html to dziala ok, a jak w menu wyswietlona reszte linkow to sie tworza tak: http://localhost/test/show/show/38.html . klikam znowu w linka i powstaje http://localhost/test/show/show/show/38.html
czyli z kazda strona sie dodaje /show/
jak zmienie generowanie linkow na:
  1. <a href="http://localhost/test/show/<?php echo $post['id'] ?>.html"> <?php echo $post['tytul'] ?> </a>


to dziala dobrze, ale to nie jest zbyt dobre rozwiazanie...



a moze zamiast wpisywania wszedzie http://localhost/test/show/ da sie to jakos zamienic jakas zmienna? na pewno da sie jakos pobrac caly adres aktualnego folderu?

Ten post edytował krzystyn 12.04.2011, 16:27:03
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 12.10.2025 - 08:40