Autor Zpráva
Pan X
Profil
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
RewriteRule ^([a-z\-]+)/([0-9]+)$ index.php?id=$1&page=$2
RewriteRule ^([a-z\-]+)$ index.php?id=$1
Pan X
Profil
mattyZEM:
Nefunguje
Davex
Profil
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
Při zadánbí této adresy se zobrazí error 404, stím že taková stránka není
Davex
Profil
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
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
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
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
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
mattyZEM:
Ukaž mi přesně jak ten odkaz chceš
Eh? Něco nechápeš?
Pan X
Profil
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
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
omlouvám se, popletl sem to má to být http://neco.example.com/detail/nejaky-clanek/2/

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0