Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz
Je zou uit [img=1] de id kunnen halen..
Met deze id zou je het specifieke plaatje uit de DB kunnen op halen.. (simpele "where ID=''")
Als je nu de url van het plaatje in een variable zet, dan kan je hem wel gebruiken in je ereg_replace..
Prutser
Met deze id zou je het specifieke plaatje uit de DB kunnen op halen.. (simpele "where ID=''")
Als je nu de url van het plaatje in een variable zet, dan kan je hem wel gebruiken in je ereg_replace..
Prutser
Maar hoe haal ik dan in 1e instantie die id uit de [img ] tag?
* drm 's gedachten zitten in de knoop
Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz
Kan je, voor je de pagina print, eerst niet kijken of er in de tekst [img]-tags staan? Zo ja, gooi ze even in een array en loop daarna die array door om naar aanleiding van de id's met behulp van je database de <img>-tags te createn.Op vrijdag 28 september 2001 13:30 schreef drm het volgende:
Maar hoe haal ik dan in 1e instantie die id uit de [img ] tag?
* drm 's gedachten zitten in de knoop
Vervolgens ga je bij het printen van die tekst met een regex de [img]-tags vervangen door de bijbehorende <img>-tag.
* Pelle denkt dat het zo wel moet lukken
/edit
zin liep niet helemaal
Hoe krijg ik dan bijvoorbeeld uit de volgende string
een array met per index de volgende informatie:
startpositie tag
eindpositie tag
id nummer

dan weet ik genoeg... Maar daar kom ik dus niet uit...
En ik weiger de string character voor character door te lopen, want er moet gewoon een betere manier zijn...
edit: even ietsiepietsie beter leesbaar
code:
1
2
3
4
5
| bla meuk lorem ipsum en nog wat van die zooi [img=0] bla bla, [b]vel[/b] illum dolore eu feugiat nulla facilisis at [img=129] nonummy [url="http://sjaak.nl"]nibh[/url] euismod tincidunt ut laoreet dolore [img=500512] bla melp lerp ruelfnog |
een array met per index de volgende informatie:
startpositie tag
eindpositie tag
id nummer
dan weet ik genoeg... Maar daar kom ik dus niet uit...
En ik weiger de string character voor character door te lopen, want er moet gewoon een betere manier zijn...
edit: even ietsiepietsie beter leesbaar
Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz
PHP:
1
2
3
4
5
6
7
8
9
10
11
| <? function insert_image($id) { // SELECT blabla FROM blabla WHERE ID = $id return "[img]\"".$row["url"]."\"[/img]"; } $p = "/\\[img=[0-9]+\]/ie"; $r = "insert_image($1)"; $s = preg_replace($p, $r, $s); ?> |
Ofzo, verder moet je hier maar eens kijken als het niet lukt.
Een redelijk alternatief voor een replace callback zou in dit geval een preg_split met de flag PREG_SPLIT_DELIM_CAPTURE in combinatie met een implode zijn, anders zou het toch echt op handmatig parsen uitkomen ben ik bang.
PHP:
1
2
3
| <? $img_id = eregi_replace( "\\[img=([^[]*)\]", "\\1", $contents ); ?> |
Nu is de inhoud van $line toch 0??
Dan doe je volgens mij het volgende:
PHP:
1
2
3
4
5
6
7
8
9
10
| <? $sql = "select blabalblablabla where id='$img_id'"; $items = mysql_query($sql); $item = mysql_fetch_array($items); $url = $item[url]; $alt = $item[alt]; $contents = eregi_replace( "\\[img=([^[]*)\]", "[img]\"$url\"[/img]", $contents); ?> |
Fouten voorbehouden svp
tomato is mijn held!!!Op vrijdag 28 september 2001 16:00 schreef tomato het volgende:
PHP:
1 2 3 4 5 6 7 8 9 10 11 <? function insert_image($id) { // SELECT blabla FROM blabla WHERE ID = $id return "[img]\"".$row["url"]."\"[/img]"; } $p = "/\\[img=[0-9]+\]/ie"; $r = "insert_image($1)"; $s = preg_replace($p, $r, $s); ?>
Ofzo, verder moet je hier maar eens kijken als het niet lukt.
Een redelijk alternatief voor een replace callback zou in dit geval een preg_split met de flag PREG_SPLIT_DELIM_CAPTURE in combinatie met een implode zijn, anders zou het toch echt op handmatig parsen uitkomen ben ik bang.
Dat is echt een rielekste manier, ik wist dus niet dat je ook functies aan kon roepen binnen een preg_replace... nu dus wel, en dat opent perspectieven wat betreft parsen!!!
Thnx for ur help, Prutser ook
Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz
for the record en search
De regex heeft geen haakjes, dus die moest ik wel veranderen in
maar ach...
De regex heeft geen haakjes, dus die moest ik wel veranderen in
code:
1
| /\\[img=([0-9]+)\]/ie |
maar ach...
Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz
Dat komt omdat je held tomato (wie kent hem nietOp vrijdag 28 september 2001 16:27 schreef drm het volgende:
tomato is mijn held!!!
Dat is echt een rielekste manier, ik wist dus niet dat je ook functies aan kon roepen binnen een preg_replace...
hmfz, zou het kunnen dat hij bij maar 1 nummer teruggeeft?
ik krijg dus steeds een van de eerste 10 plaatjes te zien
iemand enig idee? bedankt alvast
ik krijg dus steeds een van de eerste 10 plaatjes te zien
iemand enig idee? bedankt alvast
openkat.nl al gezien?
Pagina: 1