Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] kontroler i htaccess
Forum PHP.pl > Forum > Przedszkole
marei44
witam, mam cos takiego ze strony symfony:

  1. $uri = $_REQUEST['REQUEST_URI'];
  2. if ($uri == '/index.php') {
  3. list_action();
  4. } elseif ($uri == '/index.php/show' && isset($_GET['id'])) {
  5. show_action($_GET['id']);
  6. } else {
  7. header('Status: 404 Not Found');
  8. echo '<html><body><h1>Page Not Found</h1></body></html>';
  9. }


w htaccess zrobilem sobie kierowanie na index.php:

Kod
RewriteRule ^(.*)$ /index.php?$1 [L]


ale jak wpisze /index.php/show?id=2

to mi to nie dziala, dlaczego? cos z tym issetem jest zle, bo mi nie lapie. moze cos jeszcze musze dodac do htaccess?
nospor
echo $uri;
i życie stało sie prostrze...
marei44
myslisz, ze o tym nie wiedzialem?
nospor
Nie wiem, jakbyś wiedział to byś napisał co to zwraca a nie głupio pyskował. tongue.gif

analogicznie zrob sobie
print_r($_GET);
marei44
mam problem z tym ze nie lapie mi tego drugiego warunku z 4 linijki. jak zmienie go na

  1. } elseif ($uri == '/index.php/show?id=2) {

to dziala dobrze, ale przeciez nie bede dla kazdego newsa robil regulki w indexie
nospor
Jakbyś zrobił print_r($_GET); to byś zobaczył ze nie ma tam ID.
A nie tam ID bo ty tą regułką nie ustawiasz parametrów po ? tylko ustawiasz cały ciąg.
No i niestety musisz te ID wyciągnąć ręcznie z tekstu a nie z $_GET
marei44
hmm, print_r($_GET) po wejsciu na strone:
/index.php/show?id=2

wywala mi:

Array ( [id] => 2 )

wiec chyba jednak jest to ID.

mozesz naprowadzic jak to recznie wyciagnac?

a moze ma ktos inny sposob jak to rozwiazac? nie musi byc tak jak w pierwszym poscie smile.gif
nospor
coś kręcisz. Skoro jest id w GET to isset powinien działać wink.gif

Cytat
a moze ma ktos inny sposob jak to rozwiazac? nie musi byc tak jak w pierwszym poscie

Może zainteresuje cię to:
http://nospor.pl/ladne-urle.html
Jest tam dołączony działajacy skrypt który obsługuje parę ładnych urli,
http://stronka.pl/costtam/blabla
i specjalnie dla newsów:
http://stronka.pl/nazwanewsa,id.html
marei44
no nie dziala to u mnie. wpisuje adres /index.php/show?id=2 i nie lapie tego.
a jak zmienie ta regulke na taki dokladny adres to jest ok.
moglby ktos to sprobowac, czy tylko ja mam taki blad?
bo to mi wyglada jakby trzeba bylo zrobic jakas regulke w htaccess, zeby lapalo, tylko jaka?

ten link od ciebie przejrzalem, ale to za trudne dla mnie
nospor
Cytat
ten link od ciebie przejrzalem, ale to za trudne dla mnie
No ale tam masz dołączoną działającą aplikację, która przetwarza już ładne url oraz masz przykład jak użyć. Jedyne co musisz zrobić to tylko tego użyć smile.gif
marei44
dzieki, popatrze potem i na pewno sie odezwe, bo bede mial pytania tongue.gif da sie w tym zrobic kierowanie na index.php jak jakiegos adresu nie ma? bo o to mi wlasnie chodzi i ten przyklad z gory tak wlasnie ma dzialac, tylko mam problem z linkami z id

ale moze zna ktos odpowiedz na to? bo mnie to ciekawi czemu nie dziala ;/
nospor
Cytat
da sie w tym zrobic kierowanie na index.php jak jakiegos adresu nie ma? bo o to mi wlasnie chodzi i ten przyklad z gory tak wlasnie ma dzialac, tylko mam problem z linkami z id
No tak. Na tym właśnie polega działanie ładnych url ze jak nie ma adresu to odpala się właściwy mechanizm
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.