Autor Zpráva
sova
Profil *
zdravim, prosim o radu jak na doplneni url adresy obrazku

takto vypada zdrojovy text:

<img src="http://www.domena.cz/obrazky/clanek13-img1.jpg.middle" alt="" width="400" height="265" />


a takto bych potreboval aby vypadal koncovy vysledek:

<a href="http://www.domena.cz/obrazky/clanek13-img1.jpg">
<img src="http://www.domena.cz/obrazky/clanek13-img1.jpg.middle" alt="" width="400" height="265" />
</a>


myslim ze by to slo pomoci preg_replace ... ale nerozumim fukcionalite... prosim prosim...
Nox
Profil
pokud ten řetězec na konci má fixní délku, tak je to jednoduché,
dejme tomu že:
$src="http://www.domena.cz/obrazky/clanek13-img1.jpg.middle" // co to je za formát?
$href=substr($src,0,strlen($src)-7);
sova
Profil *
takto by to slo pokud bych mel predem $src znamou.. ale ja mam jenom html kod (kompletni) a potrebuji z toho vytahnout to src a pridat kolem <img ...> <a href=""> img </a>

a to prave neumim...
Nox
Profil
Aha, mno...tak na to asi JS (ajax neumim), pokud to má být v jednom zátahu
(to pak samozřejmě nepojede s vypnutým JS)

Potřebuješ to stylem že projít celý kód a podoplňovat to nebo...

Šlo by to třeba

<a href="http://www.domena.cz/nejaka_zastupna_adresa" id="obr1">
<img src="http://www.domena.cz/obrazky/clanek13-img1.jpg.middle" alt="" id="obr1-img" width="400" height="265" />
</a>

JS:
var num=1;
var src=document.getElementById("obr"+num+"-img").src;
document.getElementById("obr"+num).href=src.substr(0,src.length-7);
sova
Profil *
no neni to zrovna to co bych chtel pouzit...

myslel jsem primu funkci v php preg_replace nebo preg_replace_callback nebo neco jineho v php...

vim ze tyto funkce umeji dle zadaneho kodu najit zacatek vnitrek a konec a nahradit to necim jinym nebo zprehazet poradi... tim by to slo ale ja toto neumim.

napr: abych uvedl konkretni priklad:

$string = preg_replace('#(^|s)(([a-z0-9._%+-]+)@(([.-]?[a-z0-9])*))#is', '\1<a href="mailto:\2">\2</a>', $string);

toto je asi jasny ne? ze to prevede vse co je ve tvaru: neco@neco.cz na odkaz s mailto: ....

tak ja jsem myslel neco co mi prevede <img src="url.jpg"> na: <a href="url.jpg"><img src="url.jpg"></a>

...

tak pokud byste nekdo vedet moc moc prosim...
Nox
Profil
sova
A máš obsah generovaný nebo již stanovený? Protože PHP neumí pracovat s obsahem stránky,
takže neumí zjistit src obrázku, aby pak na něj mohl ony funkce použít, to lze Javascriptem,
pokud je to ovšem případ první, pak je to tak, jak jsem psal v prvním příspěvku
sova
Profil *
obsah je generovany....

teda aby to upresnil, obsah je hotovy ale je ulozen v databazi a ja ten obsah nacitam a formatuji, jako napriklad nahrazuji text, na url adresu, podtrhavam keywordy, apod a mimo jine se tam cas od casu vyskytne obrazek a ja chci aby pri kliknuti byl zvetsen aniz by to uzivatel pri vkladani do db musel rucne nastavovat.

takze chci postupne prochazet text a kdyz tam bude neco tak to neco nahradit tim samym a pridat kolem toho (pred to a za to) neco navic a neco z toho co to naslo konkretneji tedy aby to naslo <img> a pridalo <a href="src-img"></a>

???

dekuji
nightfish
Profil
<?php

$vstup = '<img src="http://www.domena.cz/obrazky/clanek13-img1.jpg.middle" alt="" width="400" height="265" />';
$vystup = preg_replace("/(<img src=\")(.*)(\.middle.*\/>)/U", "<a href='$2'>$1$2$3</a>", $vstup);
echo $vystup;
?>
sova
Profil *
:-)

to je super to je ono... sakra tohle se musim naucit moc moc dik....


jeste pro doplneni, tento proces se provede jenom jednou pri prvnim obrazku, ale kdyz v tom textu je tech <img> vice...

jak na to?
sova
Profil *
jo tak to sorry... funguje to v celym textu... ten obrazek kterej neprosel preg_... tak nekoncil middle


DIKY

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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

0