Autor | Zpráva | ||
---|---|---|---|
Pan X Profil |
#1 · Zasláno: 13. 2. 2010, 20:21:18
Zdravím, potřeboval bych poradit.
Mám adresu ve stylu http://neco.example.com/detail.php?id=nejaky-ten-clanek&page=2 tuto adresu si pomocí mod-rewrite upravuji na http://neco.example.com/nejaky-ten-clanek/?page=2 a já bych se ještě potřeboval dostat na http://neco.example.com/nejaky-ten-clanej/2 tak aby $_GET['page'] opravdu obsahovala hodnotu za rovnáse. Zatím používám tento zápis v .htaccessu RewriteEngine On RewriteBase / RewriteRule ^([^./]+)/?$ $1.php [NC,L] RewriteRule ^detail/([0-9a-z\-]+)/$ detail.php?id=$1 RewriteRule ^([0-9a-z\-]+)/$ index.php?id=$1 mohl by mi někado prosím poradit jak na to? Ve stavu v jámek to je ted mi totiž nefunguje práve $_GET['page'] Díky moc P.S. potřebuji jen upravit ten htacces, stím že ta ?page=x tam nemůsí být pokaždé! |
||
mattyZEM Profil |
#2 · Zasláno: 13. 2. 2010, 20:47:07 · Upravil/a: mattyZEM
RewriteRule ^([a-z\-]+)/([0-9]+)$ index.php?id=$1&page=$2 RewriteRule ^([a-z\-]+)$ index.php?id=$1 |
||
Pan X Profil |
#3 · Zasláno: 14. 2. 2010, 11:28:46
mattyZEM:
Nefunguje |
||
Davex Profil |
#4 · Zasláno: 14. 2. 2010, 11:41:13
Při zadání adresy http://neco.example.com/nejaky-ten-clanej/2 musí fungovat:
<?php var_dump($_GET); ?> array(2) { ["id"]=> string(17) "nejaky-ten-clanej" ["page"]=> string(1) "2" } |
||
Pan X Profil |
#5 · Zasláno: 14. 2. 2010, 14:55:33
Při zadánbí této adresy se zobrazí error 404, stím že taková stránka není
|
||
Davex Profil |
#6 · Zasláno: 14. 2. 2010, 16:45:36 · Upravil/a: Davex
Při zadání adresy bez čísla na konci bude vadit první pravidlo, takže ho nelze použít:
RewriteEngine On RewriteBase / RewriteRule ^detail/([0-9a-z\-]+)/$ detail.php?id=$1 [L] RewriteRule ^([a-z\-]+)/([0-9]+)$ index.php?id=$1&page=$2 [L] RewriteRule ^([a-z\-]+)/?$ index.php?id=$1 [L] |
||
Pan X Profil |
#7 · Zasláno: 14. 2. 2010, 16:56:12
Koukám že došlo ještě k malému nedorozumění, potřebuji upravit řezězec pro detail.php a né index.php
použíám tedy toto: RewriteEngine On RewriteBase / RewriteRule ^detail/([0-9a-z\-]+)/?$ detail.php?id=$1 [L] RewriteRule ^detail/([a-z\-]+)/([0-9]+)$ detail.php?id=$1&page=$2 [L] ale stejně nejde |
||
mattyZEM Profil |
#8 · Zasláno: 14. 2. 2010, 17:04:51
Ukaž mi přesně jak ten odkaz chceš, podle toho co jsi zadal to MUSÍ fungovat. Chyba nebyla u mne, ale u tebe.
|
||
Davex Profil |
#9 · Zasláno: 14. 2. 2010, 17:06:35
Pan X:
Nevyskytují se v URL ještě jiné znaky než malá písmena bez diakritiky a pomlčky? Existuje v rootu webu skript detail.php? |
||
Pan X Profil |
#10 · Zasláno: 14. 2. 2010, 17:29:31 · Upravil/a: Pan X
detail.php tam je - předelání toho ?id=neco funguje ale nedaí semi tam dostat to číslo stránky
Ta adresa bez toho přidaného page funguje http://neco.example.com/etsto-nejakeho-cklanku/ fuguje ok ale jak tam nakonec dam /2/ tak to nejde |
||
mattyZEM Profil |
#11 · Zasláno: 14. 2. 2010, 17:30:19
mattyZEM:
„Ukaž mi přesně jak ten odkaz chceš“ Eh? Něco nechápeš? |
||
Pan X Profil |
#12 · Zasláno: 14. 2. 2010, 17:44:51
mattyZEM:
Odkaz musí vypadat takto: http://neco.example.com/testpvaci-clanek/2/ ale aby to odpovídaloto tomuto zápisu: http://neco.example.com/detail.php?id=testpvaci-clanek&page=2 stím že to &page=2 tam nemusí být pokaždé |
||
mattyZEM Profil |
#13 · Zasláno: 14. 2. 2010, 17:46:36
OMG minule jsi za to "2" nenapsal lomítko.. 3-(
RewriteRule ^([a-z\-]+)/([0-9]+)/$ detail.php?id=$1&page=$2 RewriteRule ^([a-z\-]+)/$ detail.php?id=$1 Tento zápis odpovídá odkazům: http://www.example.com/testovaci-clanek/16116621/ a druhý: http://www.example.com/testovaci-clanek/ |
||
Pan X Profil |
#14 · Zasláno: 14. 2. 2010, 19:30:37 · Upravil/a: Pan X
omlouvám se, popletl sem to má to být http://neco.example.com/detail/nejaky-clanek/2/
|
||
Časová prodleva: 14 let
|
0