Zadejte hledaný výraz...

Friendly URL a PHP

Michalworms
verified
rating uzivatele
2. 10. 2014 00:04:51
Zdravim,
začal jsem dělat pěknou URL na web kde je obsah stránek generovaný z databáze, tudíž se hodnoty mezi stránkami předávají přez $_REQUEST. Pokud jsem používal normální URL tj. index.php?str=obsah&det=detail , bylo všechno v pohodě. Potom jsem začal vytvářet pěknou URL přez mod_rewrite a měl jsem problém, protože se mi přestaly předávat proměnné, které se dřív předávaly přez URL, takže kromě načítání nových stránek, hromada chyb.
můj .htaccess vypadá takto:
2. 10. 2014 00:04:51
https://webtrh.cz/diskuse/friendly-url-a-php#reply1058708
Fido123
verified
rating uzivatele
(13 hodnocení)
2. 10. 2014 00:17:27
No a v jakém tvaru má být ta „pěkna“ URL? Takhle, jak to máš, tak parametr det bude vždycky prázdný, protože tu proměnnou $2 nikde nezachytáváš.
2. 10. 2014 00:17:27
https://webtrh.cz/diskuse/friendly-url-a-php#reply1058707
Předpokládám že budeš potřebovat obecnější zápis, tohle by tě mohlo nasměrovat
2. 10. 2014 00:17:42
https://webtrh.cz/diskuse/friendly-url-a-php#reply1058706
David Kácha
verified
rating uzivatele
(39 hodnocení)
2. 10. 2014 00:25:35
Nevím jak moc je to profi, ale mě funguje vždycky http://www.generateit.net/mod-rewrite/index.php
2. 10. 2014 00:25:35
https://webtrh.cz/diskuse/friendly-url-a-php#reply1058705
Taps
verified
rating uzivatele
(118 hodnocení)
2. 10. 2014 09:39:01
Ono je nutné rovněž zmínit, že musíš upravit i samotné odkazy
2. 10. 2014 09:39:01
https://webtrh.cz/diskuse/friendly-url-a-php#reply1058704
Michalworms
verified
rating uzivatele
2. 10. 2014 21:07:23
Napsal lukasik;1128658
Předpokládám že budeš potřebovat obecnější zápis, tohle by tě mohlo nasměrovat
čau, když ten tvůj kod použiji jen na jednu proměnnou tj. RewriteRule ^(+)$ index.php?str=$1 tak mi fungule, ale jak ho nechám na 2 proměnné tak mi to hlásí už na první proměnnou stránka nenalezena.
2. 10. 2014 21:07:23
https://webtrh.cz/diskuse/friendly-url-a-php#reply1058703
Jan Matoušek
verified
rating uzivatele
(12 hodnocení)
3. 10. 2014 14:01:11
Napsal Michalworms;1128880
čau, když ten tvůj kod použiji jen na jednu proměnnou tj. RewriteRule ^(+)$ index.php?str=$1 tak mi fungule, ale jak ho nechám na 2 proměnné tak mi to hlásí už na první proměnnou stránka nenalezena.
to pravidlo spoléhá na to, že budou uvedeny oba parametry
tedy
vyhoví
ale
nevyhoví
zkus
3. 10. 2014 14:01:11
https://webtrh.cz/diskuse/friendly-url-a-php#reply1058702
Michalworms
verified
rating uzivatele
3. 10. 2014 17:47:54
Napsal Jan Matoušek;1129025
to pravidlo spoléhá na to, že budou uvedeny oba parametry
tedy
vyhoví
ale
nevyhoví
zkus
jsem to blbě vysvětlil, tady je celej můj htacces:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(+)/?$ ?str=$1
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(+)/?(+)/?$ index.php?str=$1&det=$2
na první proměnnou mě to funguje, ale na 2 (tj, na proměnnou det) mi to hlásí že stránka neexistuje. Když nepoužiji mod_rewrite tzn. v url mám index.php?str=$1&det=$2 , tak mi to zobrazuje vše..... fakt nevím čím to
3. 10. 2014 17:47:54
https://webtrh.cz/diskuse/friendly-url-a-php#reply1058701
V prvním pravidle máš i podtržítko, nechybí ti i ve druhém?
To by vysvětlovalo proč to nejede když by ho první proměnná obsahovala
3. 10. 2014 17:52:05
https://webtrh.cz/diskuse/friendly-url-a-php#reply1058700
Michalworms
verified
rating uzivatele
3. 10. 2014 17:54:43
Napsal Michalworms;1129085
jsem to blbě vysvětlil, tady je celej můj htacces:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(+)/?$ ?str=$1
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(+)/?(+)/?$ index.php?str=$1&det=$2
na první proměnnou mě to funguje, ale na 2 (tj, na proměnnou det) mi to hlásí že stránka neexistuje. Když nepoužiji mod_rewrite tzn. v url mám index.php?str=$1&det=$2 , tak mi to zobrazuje vše..... fakt nevím čím to
ještě dodám url píšu ve tvaru strana (to je pro jednu proměnnou) , detail (pro 2 proměnné) ,,,,,, není chyba v tom???
3. 10. 2014 17:54:43
https://webtrh.cz/diskuse/friendly-url-a-php#reply1058699
Fido123
verified
rating uzivatele
(13 hodnocení)
3. 10. 2014 22:05:58
Zkus tohle:
3. 10. 2014 22:05:58
https://webtrh.cz/diskuse/friendly-url-a-php#reply1058698
Michalworms
verified
rating uzivatele
3. 10. 2014 22:58:46
chyba byla jinde, už jsem na to přišel, dneska pařím, zítra popíšu celý postup a záludnosti mod_rewrite
3. 10. 2014 22:58:46
https://webtrh.cz/diskuse/friendly-url-a-php#reply1058697
Pro odpověď se přihlašte.
Přihlásit