Autor Zpráva
pogg
Profil
Zdravím,

potřeboval bych nějak udělat nahrazení slov odkazem.

mám dvě tabulky kde jedna obsahuje článek(a datak němu) a druhá obsahuje slova a knim url, kde se nachází stránky s detailním popisem tohoto slova.

Jako když máte článek:

xxx x xx x xxxx x xx xx xxx nokia xxxx xx xx x x x xxxxx xxxxx.

a aby to při vytažení článku z db nahradilo to slovo nokia za odkaz s url, kde tu nokii detailně pipisuji.

článek vytáhnu v pohodě ale ten scriptík na to najít to slovo a nahradit jej, to nemůžu dát dokupy.

díky všem za rady....
ninja
Profil
Jaky programovaci/sriptovaci jazyk? Vsechny maji funkci na nalezeni casti retezce v jinem rezetci, pripadne rovnou pouyzijte regularni vyraz.
pogg
Profil
Jaky programovaci/sriptovaci jazyk? Vsechny maji funkci na nalezeni casti retezce v jinem rezetci, pripadne rovnou pouyzijte regularni vyraz.

je to php
ninja
Profil
A s cim konkretne mate probnlem? Kdyz ovladate praci s databazi, snad neni problem pouzit v cyklu funkci str_ireplace pripradne to udelat jednim regularnim dotazem pres preg_replace, ne?
pogg
Profil
A s cim konkretne mate probnlem? Kdyz ovladate praci s databazi, snad neni problem pouzit v cyklu funkci str_ireplace pripradne to udelat jednim regularnim dotazem pres preg_replace, ne?

no php moc neumím jen základy ale to výše uvedenné jsem zkoušel, ale to nahrazuje jen přesné slovo tedy:

nahradí to slovo NOVÁK za něco jiného co zadám ale bude-li tam NOVÁKUV tak to nahradí jen NOVÁK a zůstane mi to UV nezměněné.

Špatně jsem to prve formuloval. Je nějaká možnost jak docílit aby to nahradilo i ty konconky, aniž bych musel přidávat všechny tvary slov do db?

asi by to šlo jedině sledovat, jestli je za nahrazovaným slovem mezera nebo tak nějak ,ale jak toho docílit to opravdu nevím.
pogg
Profil
Navíc jsem teď testoval že i dyž zadám několik tvarů toho danného slova tak mi to vždy nahradí tu část takže vzniká nesmysl viz

tabulka:
('Manchester United', '<a href="http://www.fotbalovyraj.ic.cz/tym-club/fotbalovy-klub-Manchester-United-FC/" title="Manchester" rel="follow">Manchester United</a>'),
('Manchesteru', '<a href="http://www.fotbalovyraj.ic.cz/tym-club/fotbalovy-klub-Manchester-United-FC/" title="Manchester" rel="follow">Manchester United</a>'),
('Manchester', '<a href="http://www.fotbalovyraj.ic.cz/tym-club/fotbalovy-klub-Manchester-United-FC/" title="Manchester" rel="follow">Manchester United</a>'),


text:
Fotbalisté Manchester United vstoupili ...

vznikne:

Fotbalisté <a href="http://www.fotbalovyraj.ic.cz/tym-club/fotbalovy-klub-%3Ca%20href=" http:="" www.fotbalovyraj.ic.cz=""; tym-club="" fotbalovy-klub-manchester-united-fc="" title="Manchester" rel="follow">Manchester United</a>-United-FC/" title="<a href="http://www.fotbalovyraj.ic.cz/tym-club/fotbalovy-klub-Manchester-United-FC/" title="Manchester" rel="follow">Manchester United</a>" rel="follow"&gt;<a href="http://www.fotbalovyraj.ic.cz/tym-club/fotbalovy-klub-Manchester-United-FC/" title="Manchester" rel="follow">Manchester United</a> United United vstoupili ....
ninja
Profil
Musite tedy pouzit nejakou logiku, aby to vzalo nejan hledany rezetez, ale i alfanumericke znaky pred a za (podle nastaveni). Lepsi to bude asi pres regularni vyraz, neco na zpusob
([a-z0-9]*novák[a-z0-9]*)
pogg
Profil
tak to jsem úplně mimo :)

nešlo by to na nějakém příkladě....

fakt moc díky že semnou ztrácíte čas:)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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