Pagina 1 van 1

BBCode wordt niet geparst (Myreact -> phpBB)

Geplaatst: 05 jan 2006, 17:26
door PiLotCoptEr
Support template:
  • Wat is het probleem? BBCode wordt niet geparsed.
    Wanneer ontstond het probleem? Was er altijd al.
    Adres van je forum: http://phpbb.gentoo-forum.nl
    Geïnstalleerde mods: Geen.
    Huidige template: Standaard subSilver.
    phpBB versie: 2.0.18
    Host: Eigen server.
    Heb je onlangs een mod of stijl geïnstalleerd? Nee.
    Heb je gezocht naar een antwoord? Ja (nergens een antwoord)
Overige opmerkingen: Het board is geconverteerd van MyReact naar phpBB.

Als we een post editten en dan versturen, wordt daarna bbcode wel goed geparst. We hebben voor elke post al een bbcode_uid in `phpbb_posts_text` gegooid, en alle bbcode tags de uid meegegeven ([b:1:<hash>]). Ook staat in `phpbb_posts` de optie `enable_bbcode` op '1'. We hebben geen enkel bestand van phpBB zelf aangepast, het is een versie installatie van phpBB.

Geplaatst: 05 jan 2006, 17:28
door Ytrecq
Heb je in je profiel en/of onderaan het bericht posten de optie: bbc gebruiken aangevinkt?
Oja, en je link klopt niet.

Geplaatst: 05 jan 2006, 17:30
door PiLotCoptEr
Link is gefixt.
En, zoals ik al zei:
Ook staat in `phpbb_posts` de optie `enable_bbcode` op '1'.

Geplaatst: 05 jan 2006, 17:59
door Paul
Klopt de uid ook met degene in de posts staat?

Geplaatst: 05 jan 2006, 18:14
door PiLotCoptEr
Uiteraard, we hebben dit scriptje gebruikt:

Code: Selecteer alles

<?php

/*
Author : ML
Date : 4 jan
Purpose : This wil attach a hash to each bbcode command
[cde] --> [code:1:<HASH>]
etc.

same for [/ bbcode commands .


*/

$tags = array ('b','u','i','code','quote');


mysql_connect ("localhost", "pilotcopter", "xxxx");
mysql_select_db ("lein");

$sql = "SELECT * FROM `phpbb_posts_text`";
$resultRows = mysql_query($sql) or die (mysql_error());

while ($row = mysql_fetch_array ($resultRows)) {
  foreach ($tags as $tag) {
    $row['post_text'] = str_replace ('['.$tag.']', '['.$tag.":1:".$row['bbcode_uid'].']', $row['post_text']);
    $row['post_text'] = str_replace ("[/".$tag.']', "[/".$tag.":1:".$row['bbcode_uid'].']', $row['post_text']);
  }
  $sql = "UPDATE `phpbb_posts_text` SET `post_text`='" . $row['post_text'] . "' WHERE `post_id`='" . $row['post_id'] . "'";
  mysql_query ($sql);
}
mysql_close();
?>

Geplaatst: 05 jan 2006, 18:18
door Paul
Maar dat klopt helemaal niet, er moet geen :1 in ;)

Geplaatst: 05 jan 2006, 18:25
door PiLotCoptEr
Volgens mij wel, ik heb mijn database even gequeried, en in een goede post stond duidelijk: [tag:1:hash]. Ik heb ook geprobeerd om het script zonder :1 uit te voeren, echter zonder resultaat.

Geplaatst: 05 jan 2006, 18:28
door Boudewijn
ik heb hem vannacht ook zonder die :1 gedraaid (tis mijn server btw), en dat hielp ook niet.

Dit deed ik: (aanpassing op pilotcopters's script):
*hier stond een foutje*

Geplaatst: 05 jan 2006, 18:49
door Paul
PiLotCoptEr schreef:Volgens mij wel, ik heb mijn database even gequeried, en in een goede post stond duidelijk: [tag:1:hash]. Ik heb ook geprobeerd om het script zonder :1 uit te voeren, echter zonder resultaat.
Soms wordt het er inderdaad wel bijgezet, soms niet. Hij wordt er bijgezet, wanneer het de eerste diepte is van de bbcode EN wanneer $mark_lowest level true is, en dat is alleen bij code, en verder nergens ;)

Geplaatst: 05 jan 2006, 19:19
door PiLotCoptEr
Hm ok, ik heb het even verder getest, en idd, het moet [tag:hash] zijn :? Dus bij code tags moet ik wel [code:1:hash] doen?

Geplaatst: 05 jan 2006, 19:23
door Paul
jep

Geplaatst: 05 jan 2006, 19:33
door PiLotCoptEr
Ok, bedankt iedereen :)