Suchen und ersetzen eines variablen Wertes

Christian Fischer Satanic.Surfer.666 at web.de
Mo Jul 14 13:21:22 CEST 2008


Hi Uwe,

vielen Dank für Deine Antwort.

Ich hatte vergessen dass ich das mit LIKE '%[img:%:%]% schon probiert habe, die Suche dann aber auch Tags die z.B. so aussehen findet:

[img:z1nxhwn4]

welche aber nicht verändert werden sollen. Das mit substring/concat werde ich mir mal anschauen, die Funktionen kannte ich noch nicht.

Mit freundlichem Gruß
Chris Fischer

> -----Ursprüngliche Nachricht-----
> Von: "Uwe Driessen" <driessen at fblan.de>
> Gesendet: 14.07.08 12:32:10
> An: <mysql-de at lists.4t2.com>
> Betreff: RE: Suchen und ersetzen eines variablen Wertes


> Christian Fischer schrieb:
> > 
> > in der Datenbank (Mysql 5.0.51a) meines phpBB 3.0 Forums habe ich eine Tablelle
> > "phpbb_posts" mit der Zeile "post_text" in der die einzelnen Posts abgespeichert sind.
> > Nach einem Forumsoftware- Update von 2.0 auf 3.0 habe ich jetzt das Problem dass ich in
> > der Zeile "post_text" folgenden Code für den [img] BBcode habe:
> > 
> > [img:336:252]http://www.domain.de/bildname.jpg[/img]
> > (Die Zahlen 336:252 sind je nach Bildgröße variabel)
> > 
> > welcher aber so aussehen sollte:
> > 
> > [img]http://www.domain.de/bildname.jpg[/img]
> > 
> > und ich deshalb Probleme mit der richtigen Anzeige der BBCodes habe.
> > 
> > Wenn die Zahlen 336:252 fest wären könnte ich mein Problem ja so lösen:
> > 
> > UPDATE phpbb_posts SET post_text = REPLACE(post_text, '[img:336:252]', '[img]')
> > WHERE post_text LIKE '%[img:336:252]%';
> > 
> > was aber leider nicht der Fall ist. Gibt es eine Möglichkeit über Mysql diese variablen
> > Werte zu suchen und auszutauschen?
> 
> Schon mal mit like '%[img:%:%]% versucht?
> 
> Versuche es mal die Zeichenkette in Ihre Bestandteile per Substring zu zerlegen und per
> concat wieder zusammenzusetzen, evtl. mit einer dazwischen geschalteten temptabelle.
> 
> Update .... set post_text = concat(substring(post_text,1,4),"]",substring(post_text,14))
> 
> Prüf es vorher mit select ich habs einfach mal so hingeschrieben
> 
> 
> 
> > 
> > Vielen Dank schon einmal im vorraus für eine Antwort.
> > 
> 
> 
> Mit freundlichen Grüßen
> 
> Drießen
> 
> -- 
> Software & Computer
> Uwe Drießen
> Lembergstraße 33
> 67824 Feilbingert
> Tel.: +49 06708 / 660045   Fax: +49 06708 / 661397
> 
> _______________________________________________
> Allgemeine Infos zur Liste: http://www.4t2.com/mysql/
> Verwaltung: https://lists.4t2.com/cgi-bin/mailman/listinfo/mysql-de
> 


_____________________________________________________________________
Der WEB.DE SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen!
http://smartsurfer.web.de/?mc=100071&distributionid=000000000066