Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: mod rewrite - cały czas czekam na pomoc ! :-)
Forum PHP.pl > Forum > Serwery WWW
ARE$
Pomijając to co wcześniej napisałem....
mam regułę
RewriteRule ^users-(.+)?$ index.php?users=$1
po wejściu w strona.pl/users-login jest wszystko ok...
gdy zmieniam na
RewriteRule ^users/(.+)?$ index.php?users=$1
i chce wejsc przez strona.pl/users/login to wyswietla sie na czystej strone "Nie ma takiego usera"

user.php
  1. <?php
  2.  
  3. $loginek = mysql_escape_string(strval($_GET['users']) );
  4. $userek = @mysql_fetch_object(mysql_query('SELECT * FROM `users` WHERE `login`="'.$loginek.'" LIMIT 1'));
  5.  
  6. if ($userek == TRUE) {
  7. .....
  8. }
  9.  
  10. else echo 'Nie ma takiego usera';
  11. ?>


w index.php mam coś takiego
  1. <?php
  2. elseif ( isSet($_GET['users']) && $_GET['users'] != '' )
  3. {
  4. echo 
  5. require 'users.php';  
  6. }
  7. ?>



czyli wychodzi na to ze zamiast tak jakby index.php?users= widzi users.php dlatego nawet nie wczytuje reszty strony

-------------------------------------------------------

Witam,

mam problem z zamianą linka index.php?users=login na users/login
w .htaccess dodałem regułe
RewriteRule ^users/([^-]*)$ index.php?users=$1 i chyba tak powinno być ?

Problem polega na tym że w user.php pobieram login z adresu w ten sposób
$loginek = mysql_escape_string( strval($_GET['users']) );
i dalej według tego pobieram reszte odpowiednich danych z bazy.

Wchodząc przez users/login to "$loginek = mysql_escape_string( strval($_GET['users']) );" chyba nie ma prawa zadziałać bo nie znajdzie w adresie users='........'

Jak zrobić żeby wchodząc przez users/ pobierało wpisany login smile.gif ?

Z góry dziękuje za pomoc/podpowiedzi.
kwiateusz
ma prawo zadziałać bo skrypt php nie widzi users/login tylko index.php?users=login o ile nie walnąłeś sie w RewriteRule winksmiley.jpg bo jednak jestem noga z wyrażeń regularnych
ARE$
Rewrite chyba dobrze jest, jeśli nie to czekam na pomoc ^^
kwiateusz
a testowałeś to? czy w ogóle występują jakieś błędy?
ARE$
Tak, zrobiłem

echo '<pre>';
print_r($_GET);
echo '</pre>';

jak się wchodzi przez index.php?users=login zwraca dobrze login... jak przez user/login nic nie zwraca

Array
(
)
sf
Dodałeś do .htaccess włączenie mod rewrite i ścieżkę domyślną ? Bo aktualnie chyba tego Ci brakuje...

mod rewrite
ARE$
Nie no ;-) RewriteEngine On jest


Teraz zrobilem cos takiego
RewriteRule ^users-([^-]+)$ index.php?users=$1 [L]

Dzieki temu uzyskalem linka /users-login i dziala bez zarzutu czyli po prostu to cos z mod rewrite sad.gif
Jak zmieniam ^users-([^-]+) na ^users/([^-]+) to jest lipa ,jesli ktos dobrze ogarnia mod rewrite prosilbym o pomoc..
sf
W moim przykładzie było jeszcze RewriteBase .
ARE$
Nic to nie dało, zresztą pliki są w tym samym katalogu co .htaccess
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.