Aanpassen gebruikte BBcodes in Posts (in DB)

Hulp nodig bij een modificaties of op zoek naar een MOD? Bekijk ons archief. Support wordt helaas niet meer verleend.
Forumregels

Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.
phpBB2.0.x
Gesloten
djrandall
Berichten: 181
Lid geworden op: 30 jan 2004, 09:37
Locatie: Dongen
Contacteer:

Aanpassen gebruikte BBcodes in Posts (in DB)

Bericht door djrandall » 28 okt 2004, 10:28

Op mijn pagina staan aardig wat geintegreerde Films via BBcode mod voor Quicktime en Mediaplayer bestanden.
via een [video][/video] en een [quick][/quick] kunnen ze filmpjes op de site zetten.

Ik heb nu beide scripts aangepast zodat er een width en een height argument moet worden meegegeven:
[video width=400 height=300][/video]
[quick width=400 height=300][/quick]

Kan ik nu mijn Database (phpMyAdmin 2.2.1) in 1x updaten zodat alle entries [video] worden vervangen door [video width=400 height=300], idem [quick]?
En zo is het!

djrandall
Berichten: 181
Lid geworden op: 30 jan 2004, 09:37
Locatie: Dongen
Contacteer:

Bericht door djrandall » 28 okt 2004, 10:41

Ik zit eens in de DB te bladeren.
Zie ik dat ze worden opgeslagen als [quick width=640 height=400:45f04bfcc5]
En zo is het!

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 28 okt 2004, 10:41

Normaal gesproken:

Code: Selecteer alles

UPDATE phpbb_posts_text
SET post_text = REPLACE(post_text, '[video]','[video width=400 height=300]');
Probleem met phpBB is dat ze, om veiligheidsredenen, alle goedgekeurde BBCode tags een uniek UID meegeven. Dit is opgeslagen in het veld bbcode_uid in dezelfde tabel.

Zonder dat UID zal hij dus geen matches vinden, en niets vervangen. Nu kan je het proberen met een patroon .*, maar ik weet niet hoe je daar precies gebruik van kan maken binnen MySQL's versie van REPLACE(). Zoiets lijkt me logischer:

Code: Selecteer alles

UPDATE phpbb_posts_text
SET post_text = REPLACE(post_text, CONCAT('[video:', bbcode_uid, ']'), CONCAT('[video width=400 height=300:', bbcode_uid, ']'));
Of dat dit meteen foutloos zal werken weet ik niet, en of de DB notatie van de [video] mod klopt kan ik je ook niet vertellen. Beetje uitproberen dus.

//edit
Je was me voor. De notatie van de tags klopt dan dus

djrandall
Berichten: 181
Lid geworden op: 30 jan 2004, 09:37
Locatie: Dongen
Contacteer:

Bericht door djrandall » 28 okt 2004, 10:58

Mosymuis schreef:Here I come to save the day
:thumb:
En zo is het!

Gesloten