Autor | Zpráva | ||
---|---|---|---|
frk Profil * |
#1 · Zasláno: 21. 1. 2010, 18:04:52
Zdravím!
mám takový problém: existuje textarea: <textarea name="obr1" cols="60"></textarea> do které se vkládají odkazy na obrázky oddělené nějakým znakem (třeba mezerou). Takto: http://farm3.static.flickr.com/2572/3994079347_1077c48ce7.jpg http://farm3.static.flickr.com/2572/3994079347_1077c48ce7.jpg http://farm4.static.flickr.com/3245/3132787846_9fab31f35a.jpg http://farm4.static.flickr.com/3245/3132787846_9fab31f35a.jpg z řetězce $obr1 " alt="" hspace="5" vspace="5" border="0" align="left"> <img src=" Takže takto to udělat na začátku řetězce: jenom přidám <img src=" " alt="" hspace="5" vspace="5" border="0" align="left"> takže to vypadá takto, kdy je jeden odkaz: $obr2 = '<img src="'$obr1.'" alt="" hspace="5" vspace="5" border="0" align="left">' ale jakým způsobem se v tomto řetězci pak nahradí mezera, pokud textarea obsahuje více než jeden odkaz na obrázek? (aby to pak nezlikvidovalo mezery před alt, border, align se to musí udělat před tímto krokem..) Díky za rady a podněty :) |
||
mckay Profil |
#2 · Zasláno: 21. 1. 2010, 18:07:12
frk:
Zkusil bych si najít nějaký regulární výraz, který by testoval správný tvar odkazu + mezera a po odeslání pomocí konstrukce preg_replace(); |
||
keeehi Profil |
#3 · Zasláno: 21. 1. 2010, 18:09:35 · Upravil/a: keeehi
Takto to bude asi nejjednodušší:
$promenna //zde je to co přijde textarey $pole_obrazku=explode(" ",$promenna); foreach($pole_obrazku as $obrazek) echo '<img src="'.$obrazek.'" alt="" hspace="5" vspace="5" border="0" align="left">'; |
||
frk Profil * |
#4 · Zasláno: 21. 1. 2010, 19:52:49
děkuji vám oběma,
je lepší to změnit naráz než po částech, jak to ale pak někam vložím? čili jak se z toho udělá jeden řetězec? (nebo to nelze?) umask(0); $new = "$prvni_div echo $pole_obrazku$$zaverecny_div"; // tak ?? $new = "$prvni_div$pole_obrazku$$zaverecny_div"; // nebo ?? $new = "$prvni_div". echo'<img src="'.$obrazek.'" alt="" hspace="5" vspace="5" border="0" align="left">'"$zaverecny_div"; // a nebo? $new = "$prvni_div" echo '<img src="'.$obrazek.'" alt="" hspace="5" vspace="5" border="0" align="left">'."$zaverecny_div"; // zoufalost 4 $old = $new.$old; $f = fopen("obrazky.htm","w"); fputs($f,$old); fclose($f); |
||
keeehi Profil |
#5 · Zasláno: 21. 1. 2010, 20:02:57 · Upravil/a: keeehi
frk:
Všechno to přiřaďování do proměnné $new je zoufalost. (ani jedno snad nefunguje) To moje řešení přímo ty obrázky vypíše. Pokud by jsi je chtěl uložit do proměnné $new tak by to vypadalo takto: $promenna //zde je to co přijde textarey $pole_obrazku=explode(" ",$promenna); foreach($pole_obrazku as $obrazek) $new .= '<img src="'.$obrazek.'" alt="" hspace="5" vspace="5" border="0" align="left">'; |
||
frk Profil * |
#6 · Zasláno: 21. 1. 2010, 22:22:50
keeehi:
Ano, byla to zoufalost. Šlo mi o to, abych měl soupis všech obrázků v jedné proměnné, a to potom vložil do souboru. $obr2=explode(" ",$obr2); foreach($obr2 as $obrazek) $sumar .= ' <img src="'.$obrazek.'" alt="" hspace="5" vspace="5" border="0" align="left"> '; $new = "$prvni_div$sumar$zaverecny_div"; // toto jde! Takže tvoje poslední zpráva vše vyřešila. Díky za pomoc. |
||
keeehi Profil |
#7 · Zasláno: 21. 1. 2010, 22:48:35 · Upravil/a: keeehi
$new = "$prvni_div$sumar$zaverecny_div"; // toto jde! $new = $prvni_div.$sumar.$zaverecny_div; |
||
AM_ Profil |
#8 · Zasláno: 22. 1. 2010, 10:48:42
frk:
„Šlo mi o to, abych měl soupis všech obrázků v jedné proměnné, a to potom vložil do souboru.“ nebylo by lepší ukládat to tak, jak to přišlo z formuláře (tedy odkazy oddělené mezerami) a zpracovat je při výpisu? třeba se jednoho dne rozhodneš, že chceš vspace="6", a nebudeš muset nahrazovat všechny výskyty ve všech uložených záznamech ;) co se týče rychlosti zpracování, je to tak triviální, že to nemůže být poznat. |
||
frk Profil * |
#9 · Zasláno: 23. 1. 2010, 23:58:33
keeehi:
Vypadá hezky, to nemohu popřít :) (a co je rychlejší na zpracovaná nemohu posoudit :) ) AM: Neplánuji zpětnou editaci. A pokud ano, rychlost hromadné náhrady bude pro mne rychlejší, než nyní vymýšlet způsob na zpracování z nyní již existujícího záznamu. |
||
Časová prodleva: 14 let
|
0