Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] problem z ilością zmiennych i RewriteRule
Forum PHP.pl > Forum > Przedszkole
pyrek
Witam.

mam w htaccess taką regułe:

RewriteRule ^(kategoriasort)_([0-9]*)_([0-9]*)_([0-9]*)_([0-9]*)_([0-9]*)_([0-9]*)_([0-9]*)_([0-9]*)_([0-9]*).html index.php?AK=kategoria&p1=$2&p2=$3&p3=$4&p4=$5&p5=$6&start=$7&pg=$8&limit_st=$9&wid=$10


i działa mi to ale tylko do 9 zmiennej bo juz dziesiątą widzi jako $1 i 0 jak to moge poprawić??
Shili
Spróbuj ${10}

Co prawda sama nie doszłam nigdy do 10 zmiennych, ale próba nie zaszkodzi winksmiley.jpg
pyrek
${10} nie pomogło bo teraz dał

echo"$_GET[wid]";

wyświetliło mi ${10}
tomeksobczak
mod_rewrite obsługuje tylko referencje od 0-9 co jest zreszta opisane w dokumentacji

Kod
Back-references are identifiers of the form $N (N=0..9), which will be replaced by the contents of the Nth group of the matched Pattern.

http://httpd.apache.org/docs/2.0/mod/mod_r...tml#rewriterule
jeżeli potrzebujesz więcej zmiennych musisz napisać własny routing w PHP
Shili
Pewnie jest ograniczenie na iość zmiennych w takim razie.

Swoją drogą jeśli musisz przesłać 10 zmiennych przez adres, to skrypt jest co najmniej dziwny i warto by było go przerobić, albo zastanowić się nad inną metodą przesłyłania zmiennych - choćby przez sesję.
Tomplus
Własnie chciałem napisać to samo co mój imiennik, ale jak on napisał nie będę się powtarzał.

@pyrek
Z kolei Ty możesz zrobić tak zmienne aby było ich jak najmniej w .htaccess
np. alfa_beta_gamma_delta.html itp
może być w jednej zmiennej, następnie w skrypcie rozbijasz ją na kolejne przy pomocy explode()
i masz
$p[0] = "alfa"; //p1
$p[1] = "beta"; //p2
$p[2] = "gamma"; //p3
$p[3] = "delta"; //p4


Kruczki i stuczki z .htaccess znajdziesz na
http://perishablepress.com/press/2006/01/1...htaccess-tricks
jest sporo ciekawych rozwiązań może które i Tobie się przydadzą.
pyrek
ok dzięki pokombinuje!
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.