Pagina 1 van 1

oudere bb codes weer werkend krijgen

Geplaatst: 22 feb 2009 03:18
door marian
Na het overstappen van phpbb2 naar phpbb3 heb ik wederom bijv de center toegevoegd.
Werkt perfekt, maar alle berichten die nog uit de versie phpbb2 kwamen, die werken niet als zodanig.
Daar zie je dus de tekst staan [center] bericht tekst [/center]
Vraag: Is er een snelle manier dat al die oudere berichten uit phpbb2 ook automatisch weer als center weergegeven worden?

Nu is het zo, als ik die berichten edit, opnieuw opsla dan staat het goed, maar ja, ga maar eens alle oudere berichten nalopen zo, bulkt ook van de targets, ga zo maar door, vandaar mijn vraag dus.

ps, hoop dat ik bij het goede forum onderdeel zit, anders maar verhuizen en sorry van mijn kant.

Re: oudere bb codes weer werkend krijgen

Geplaatst: 23 feb 2009 00:21
door lamstraal
mn ervaring is dat je denk ik alles op nieuw moet doen :'(

want als je bbcode 1 maal verwijderd en weer op nieuw doet , dan zal je alles weer aan moeten passen

mvg lamstraal

Re: oudere bb codes weer werkend krijgen

Geplaatst: 23 feb 2009 02:26
door marian
klinkt niet hoopvol voor mij dan, heb mega veel berichten met target= en center :(
Maar geef het niet op nog, probeer in de database en in de bbcode.html door te gaan met prutsen in de hoop dat..... :roll:
Als het lukt ooit, laat ik het wel weten.

Re: oudere bb codes weer werkend krijgen

Geplaatst: 23 feb 2009 08:22
door Kevin
Er is volgens mij een manier om alle berichten in een keer opnieuw te parsen, dat zou moeten werken. Kan het alleen nergens meer vinden. :twisted:

Re: oudere bb codes weer werkend krijgen

Geplaatst: 23 feb 2009 20:13
door lamstraal
marian schreef:klinkt niet hoopvol voor mij dan, heb mega veel berichten met target= en center :(
Maar geef het niet op nog, probeer in de database en in de bbcode.html door te gaan met prutsen in de hoop dat..... :roll:
Als het lukt ooit, laat ik het wel weten.

Oke succes dan maar en hoop voor je dat het je lukt


mvg lamstraal

Re: oudere bb codes weer werkend krijgen

Geplaatst: 23 feb 2009 20:37
door Raimon
Om alle BBCodes opnieuw te parsen , maak je eerst de BBCode weer aan bijvoorbeeld de [center] bbcode.
Daarna maak je een php-bestand aan, en plak je de hieronder gegeven code , die tussen de code tags staan.

Code: Selecteer alles

<?php
    /**
    * Only adjust bitfields, do not rewrite text...
    * All new parsings have the img, flash and quote modes set to true
    *
    * You should make a backup from your users, posts and privmsgs table in case something goes wrong
    * Forum descriptions and rules need to be re-submitted manually.
    */
    //die("Please read the first lines of this script for instructions on how to enable it");

    set_time_limit(0);

    define('IN_PHPBB', true);
    $phpbb_root_path = './';
    $phpEx = substr(strrchr(__FILE__, '.'), 1);
    include($phpbb_root_path . 'common.'.$phpEx);
    include($phpbb_root_path . 'includes/message_parser.' . $phpEx);

    // Start session management
    $user->session_begin();
    $auth->acl($user->data);
    $user->setup();


    $echos = 0;

    // Adjust user signatures
    $message_parser = new parse_message();
    $message_parser->mode = 'sig';
    $message_parser->bbcode_init();

    $sql = 'SELECT user_id, user_sig, user_sig_bbcode_uid, user_sig_bbcode_bitfield
       FROM ' . USERS_TABLE;
    $result = $db->sql_query($sql);

    while ($row = $db->sql_fetchrow($result))
    {
       // Convert bbcodes back to their normal form
       if ($row['user_sig_bbcode_uid'] && $row['user_sig'])
       {
          decode_message($row['user_sig'], $row['user_sig_bbcode_uid']);

          $message_parser->message = &$row['user_sig'];
          $bbcodeId = $message_parser->bbcode_uid;

          $message_parser->prepare_bbcodes();
          $message_parser->parse_bbcode();

          $bitfield = $message_parser->bbcode_bitfield;

          $sql = 'UPDATE ' . USERS_TABLE . " SET user_sig = '" . $db->sql_escape($row['user_sig']) . "', user_sig_bbcode_uid = '" . $db->sql_escape($bbcodeId) . "', user_sig_bbcode_bitfield = '" . $db->sql_escape($bitfield) . "'
             WHERE user_id = " . $row['user_id'];
          $db->sql_query($sql);

          if ($echos > 0)
          {
             echo '<br />' . "\n <strong>USER_ID = " . $row['user_id'] . "</strong>";
             $echos = 0;
          }

          echo $row['user_id'] . '.';
          $echos++;

          flush();
       }
       else
       {
          $sql = 'UPDATE ' . USERS_TABLE . " SET user_sig_bbcode_bitfield = ''
             WHERE user_id = " . $row['user_id'];
          $db->sql_query($sql);
       }
    }
    $db->sql_freeresult($result);


    echo "<br>Finished with signatures...<br>";

    // Now adjust posts

    $message_parser = new parse_message();
    $message_parser->mode = 'post';
    $message_parser->bbcode_init();

    // Update posts
    $sql = "SELECT post_id, post_text, bbcode_uid, enable_bbcode, enable_smilies, enable_sig
       FROM " . POSTS_TABLE;
    $result = $db->sql_query($sql);

    while ($row = $db->sql_fetchrow($result))
    {
       // Convert bbcodes back to their normal form
       if ($row['enable_bbcode'])
       {
          decode_message($row['post_text'], $row['bbcode_uid']);

          $message_parser->message = &$row['post_text'];
          $bbcodeId = $message_parser->bbcode_uid;

          $message_parser->prepare_bbcodes();
          $message_parser->parse_bbcode();

          $bitfield = $message_parser->bbcode_bitfield;

          $sql = 'UPDATE ' . POSTS_TABLE . " SET post_text = '". $db->sql_escape($row['post_text']) ."', bbcode_uid = '". $db->sql_escape($bbcodeId) ."', bbcode_bitfield = '" . $db->sql_escape($bitfield) . "'
             WHERE post_id = " . $row['post_id'];
          $db->sql_query($sql);

          if ($echos > 0)
          {
             echo '<br />' . "\n <strong>POST_ID = " . $row['post_id'] . "</strong>";
             $echos = 0;
          }

          echo $row['post_id'] . '.';
          $echos++;

          flush();
       }
       else
       {
          $sql = 'UPDATE ' . POSTS_TABLE . " SET bbcode_bitfield = ''
             WHERE post_id = " . $row['post_id'];
          $db->sql_query($sql);
       }
    }
    $db->sql_freeresult($result);

    echo "<br>Finished with topics...<br>";

    // Now to the private messages
    $message_parser = new parse_message();
    $message_parser->mode = 'post';
    $message_parser->bbcode_init();

    // Update pms
    $sql = 'SELECT msg_id, message_text, bbcode_uid, enable_bbcode
       FROM ' . PRIVMSGS_TABLE;
    $result = $db->sql_query($sql);

    while ($row = $db->sql_fetchrow($result))
    {
       // Convert bbcodes back to their normal form
       if ($row['enable_bbcode'])
       {
          decode_message($row['message_text'], $row['bbcode_uid']);

          $message_parser->message = &$row['message_text'];
          $bbcodeId = $message_parser->bbcode_uid;

          $message_parser->prepare_bbcodes();
          $message_parser->parse_bbcode();

          $bitfield = $message_parser->bbcode_bitfield;

          $sql = 'UPDATE ' . PRIVMSGS_TABLE . " SET message_text = '" . $db->sql_escape($row['message_text']) . "', bbcode_uid = '" . $db->sql_escape($bbcodeId) . "', bbcode_bitfield = '" . $db->sql_escape($bitfield) . "'
             WHERE msg_id = " . $row['msg_id'];
          $db->sql_query($sql);

          if ($echos > 0)
          {
             echo '<br />' . "\n <strong>MESSAGE_ID = " . $row['msg_id'] . "</strong>";
             $echos = 0;
          }

          echo $row['msg_id'] . '...';
          $echos++;

          flush();
       }
       else
       {
          $sql = 'UPDATE ' . PRIVMSGS_TABLE . " SET bbcode_bitfield = ''
             WHERE msg_id = " . $row['msg_id'];
          $db->sql_query($sql);
       }
    }
    $db->sql_freeresult($result);

    echo "<br>Finished with private messages...<br>";

    // Done
    $db->sql_close();
    ?>
daarna noem je het bestand test_bbcode.php
en upload je het naar je webhost waar je het bestand config.php kan vinden.
Daarna roep je het aan met je internetbrowser ( domeinnaam.nl/(eventuele phpBB3 directory )/test_bbcode.php
en wat je totdat het script klaar is, wanneer het klaar is verwijder je dit bestand .

Re: oudere bb codes weer werkend krijgen

Geplaatst: 23 feb 2009 23:32
door marian
Raimon, ik ga het meteen proberen!
Als dit werkt ben ik je echt mega dankbaar, bulkt namelijk vooral van de [target= en dat ziet er niet uit nu.
Laat het je beslist weten als ik het voor elkaar gekregen heb.
Zover ontzettend bedankt weer!!

Re: oudere bb codes weer werkend krijgen

Geplaatst: 24 feb 2009 02:24
door marian
Gedaan zoals beschreven en het leek te werken.
Alle bb codes die ik aangemaakt had die ik in de phpbb2 versie gebruikte, stonden in alle berichten als vanouds.
Maar..........
alle bestaande bb codes van phpbb3, die had hij weggehaald! :shock:
dus alles wat [img] was, geen bbcode die nog werkte in de berichten, zag er triest uit
Had een backup van de database gemaakt gelukkig en die weer terug gezet.

Bijna goed dus, maar nog niet helemaal.
Nog een idee misschien? ben helemaal in de mood, leer er ontzettend van :D

Ga nog wel zelf wat proberen, misschien moet ik ook al werkt img standaard, die ook als bb code aanmaken eerst.
Never give up dus :D en hou jullie op de hoogte of dat werkt.

Re: oudere bb codes weer werkend krijgen

Geplaatst: 24 feb 2009 18:40
door Raimon
marian schreef:Gedaan zoals beschreven en het leek te werken.
Alle bb codes die ik aangemaakt had die ik in de phpbb2 versie gebruikte, stonden in alle berichten als vanouds.
Maar..........
alle bestaande bb codes van phpbb3, die had hij weggehaald! :shock:
uhm o_O en dat waren de bestaande BBCodes?, dit script parsed ze opnieuw en haalt niks weg normaal gezien.
Dan zou ik zeggen probeer de MOD Admin Reparse BBCode die parsed de bbcodes weer opnieuw.

Re: oudere bb codes weer werkend krijgen

Geplaatst: 22 jun 2017 12:34
door marian
Hij wisselt als het ware, alles wat niet goed stond in de berichten, dat stond na het parsen wel goed, alles wat voor het parsen goed stond, dat stond niet goed meer.
Dacht draai hem nog een keer, maar toen stond er niet een bb code goed meer, was wel funny om mee te maken :lol:
Soort gelijk zoals je nu de link doorgeeft naar phpbb.com heb ik vannacht ook nog geprobeerd, maar via een andere site en was er een voor de beta versie phpbb3, die deed mooi niks.

Deze ga ik vanavond testen op mijn local site, daar heb ik ook een backup draaien en verpieter ik eventueel niks meer op mijn huidige site. Ben daar alvast maar begonnen alle berichten opnieuw op te slaan, goede slaap therapie hoor :D
Maar, in het belang van iedereen, ga ik dit ook beslist testen en laat het jullie weer weten.

Tot zover thanks weer, vind echt super jullie inzet!