Autor Zpráva
Annonym
Profil *
Našel jsem sice mraky návodů, ale každý je úplně jiný, tak se raději ještě zeptám.
Když chci aby se z :

/articles.php?article_id=1



stalo napr.
/clanek_o_necem_1


mám použít tento kód? :

Options +FollowSymLinks
RewriteEngine on

RewriteRule clanek_o_necem_(.*)\.php articles.php?article_id=$1



a když ano, a budu chtít přidat další (např. clanek_o_necem_2) mám znovu opisovat tohle? :
Options +FollowSymLinks
RewriteEngine on

nebo jen tohle :
RewriteRule clanek_o_necem_(.*)\.php articles.php?article_id=$2
RewriteRule clanek_o_necem_(.*)\.php articles.php?article_id=$3
RewriteRule clanek_o_necem_(.*)\.php articles.php?article_id=$4
RewriteRule clanek_o_necem_(.*)\.php articles.php?article_id=$5
atd.


díky
PecanCZ
Profil
použij jenom toto

Options +FollowSymLinks
RewriteEngine on

RewriteRule clanek_o_necem_(.*)\.php articles.php?article_id=$1
Annonym
Profil *
a u další?
Options +FollowSymLinks
RewriteEngine on

RewriteRule clanek_o_necem_(.*)\.php articles.php?article_id=$2

nebo jen
RewriteRule clanek_o_necem_(.*)\.php articles.php?article_id=$1
Annonym
Profil *
*nebo jen
RewriteRule clanek_o_necem_(.*)\.php articles.php?article_id=$2


$2 a ne $1...
PecanCZ
Profil
nechej tam jenom to co jsem napsal, to $1 je všechno co se tam dosadí, tzn, že když budeš mít adresu articles.php?article_id=10 tak z toho vznikne clanek_o_necem_10, nemusíš tam dopisovat nic víc
Annonym
Profil *
aha, ale kdybych chtel aby
articles.php?article_id=1
by bylo
clanek_o_necem_1

ale potom něco jiného např.
articles.php?article_id=2
by bylo
clanek_o_necem_uplne_jinem_co_s_"clanek_o_necem_1"_nema_nic_spolecneho

jak se to dá udělat?
PecanCZ
Profil
tak, že do .htaccess dáš
Options +FollowSymLinks
RewriteEngine on

RewriteRule clanek_o_necem_(.*)\.php articles.php?article_id=$1
to $1 ti nahrazuje všechno co je za article_id=
Annonym
Profil *
tak teď jsem se v tom trochu ztratil :/
ale pokud ne pochopil jsem to asi takto :
napíšu článek který se bude jmenovat např. Recenze hry X (normální odkaz bude /articles.php?article_id=1) a chci aby se přepsal na /recenze_hry_x
ale potom napíšu další který bude třeba preview_hry_XYZ (normální odkaz bude /articles.php?article_id=2) a chci aby se přepsal na /preview_hry_xyz

tak to znamená že kód v .htaccess bude vypadat takhle? :
Options +FollowSymLinks
RewriteEngine on

RewriteRule recenze_hry_x\.php articles.php?article_id=1
RewriteRule preview_hry_xyz\.php articles.php?article_id=2


nebo jsem to pochopil špatně? :o
PecanCZ
Profil
jo, de to tak, ale to budeš muset pro každý článek vkládat speciální řádek do .htacces, což je trochu pracné, prostě lepší je tam vložit ty 3 řádky co jsem ti psal, ale pak budeš mít všechny články s adresou třeba nazev_clanku_1, původní bude articles.php?article_id=1, prostě ten znak $1 ti nahradí všechny znaky za tím article_id= a dosadí je do toho názvu, který chceš mít
Annonym
Profil *
PecanCZ:
a dosadí je do toho názvu, který chceš mít
:O podle čeho se pak určuje ten název (nazev_clanku_x) ?
PecanCZ
Profil
to tam nadefinuješ

Options +FollowSymLinks
RewriteEngine on

RewriteRule nazev_clanku_(.*)\.php articles.php?article_id=$1
Annonym
Profil *
nazev_clanku_(.*)
tady? a to se potom budou všechny jmenovat stejně? jen budou mít nakonci jiné číslo? (pardon, že tak otravuju :D moc se v tom nevyznám)
PecanCZ
Profil
nechej to tak jak jsem to napsal a už ti to pojede ;)
PecanCZ
Profil
já to mám udělané trochu jinak, takže jestli chceš záruku že ti to fakt pojede tak to udělej takto:
RewriteEngine On
RewriteRule ^nazev_clanku_([0-9]+)\.* /articles.php?article_id=$1 [L,QSA]
Annonym
Profil *
jj tohle funguje : /articles.php?article_id=1 → /nazev_clanku_1
ale pořád nechápu jednu věc.. to "nazev_clanku"... znamena to snad, že se bude každý článek jmenovat např. (pokud zmenim "nazev_clanku" za např. "recenze")
recenze_1
recenze_2
recenze_3
recenze_4
recenze_5.......


??
Davex
Profil
Annonym:
Pokud bude ten nazev_clanku pokaždé jiný, tak se místo něj musí použít žolík.
RewriteEngine On
RewriteRule ^.+_([0-9]+)\.? /articles.php?article_id=$1 [L,QSA]

A jen tak na okraj - k oddělování slov v URL není vhodné používat podtržítko. Vhodnější je pomlčka.
Annonym
Profil *
Davex:
A jen tak na okraj - k oddělování slov v URL není vhodné používat podtržítko. Vhodnější je pomlčka.

tzn. tohle ? :
RewriteRule ^.+           →  - ←           ([0-9]+)\.? /articles.php?article_id=$1 [L,QSA]


a podle čeho se ten název článku bere? to nehcápu... když dám tenhle kód do .htaccess a pak napíšu nějaký článek tak co vznikne místo toho "^.+_([0-9]+)\.?" ?
Annonym
Profil *
aa už jsem na to přišel. Paráda. Díky moc za pomoc!
Annonym
Profil *
joo a mimochodem, jak to je s diakritikou? ono to sice funguje např. http://domena.cz/Nedostupné ,ale podporujou to všechny prohlížeče? skrátka je s tím nějaký problém?
Davex
Profil
Annonym:
jak to je s diakritikou?
Zrovna se na to ptal kolega. Všechny moderní prolížeče by to měly podporovat. V případě IE s tím může být za neznámých okolností drobný problém a ještě tu někomu dlužím bližší výzkum.
Annonym
Profil *
Zrovna se na to ptal kolega. Všechny moderní prolížeče by to měly podporovat. V případě IE s tím může být za neznámých okolností drobný problém a ještě tu někomu dlužím bližší výzkum.

Já jsem si právě říkal že když to jde na Wikipedii tak by to mělo jít všude :D. Ale díky, už to všechno šlape ;) (IE stejně moc lidí nepoužívá, a pokud ano a mají nejnověší verzi tak to funguje. odzkoušeno ;))

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0