bbcode auf einer nicht-phpbb-seite

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
SyneX
Mitglied
Beiträge: 73
Registriert: 26.03.2004 12:11

bbcode auf einer nicht-phpbb-seite

Beitrag von SyneX »

Hallo,

kann mir jemand erklären, wie ich den BBCODE von phpBB parsen kann und dabei am besten die Funktionen von phpBB benutze?

Ich hab es Newsscript geschrieben, dass den Beitrag aus der MySQL Datenbank ausliest.

Kann mir jemand dazu die Codezeilen geben (+ die nötigen includes).

ich hab dann z.b. den text unter $news_text abgespeichert und will ihn dann mit functionen behandeln, dass ich echo $news_text; angeben kann und schon alles formatiert ist :)

Wäre sehr nett, wenn ihr mir helfen könntet.


PS: hab schon im Forum gesucht, aber so richtig nichts gefunden
SyneX
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag von witzigerkiller »

also ich mache das immer so, ist nciht ganz phpbb style:

Code: Alles auswählen

<img src="deinbild.jpg" width="15" height="15" alt=".-.">
damit machst du ein smylie und dann durch

Code: Alles auswählen

onclick="document.form1.textfeld.value=+"lala"
ergänzen:

gesammt dann

Code: Alles auswählen

<img src="deinbild.jpg" width="15" height="15" alt=".-." onclick="document.form1.textfeld.value=+"lala">
dann in php ersetzen:

$text[1] = "lala";
$neu[1] = "<img src=\"deinbild.jpg\" width=\"15\" height=\"15\" alt=\".-.\" >";

Code: Alles auswählen

preg_replace($text, $neu, $deinstringvomtextfeld);
und dann speicherst du es in eine datenbank und wenn du den text mit echo wiedergibst, dann mach so:

echo nl2br($abgefragtertext);

dann wird er mit zeilenumbrüchen dargestellt.

Das gleiche kannst du mit buttons machen.

Verstanden? - Wenn nciht schreibe ich dir ein kleines script
SyneX
Mitglied
Beiträge: 73
Registriert: 26.03.2004 12:11

Beitrag von SyneX »

nein das meinte ich nicht

ich meinte wenn ich das ausgelesen habe, soll zum beispiel durch <b> ersetzt werden. am besten noch mit den funktionen von phpbb
SyneX
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag von witzigerkiller »

das meinte ich.

Warte ich schreibe nen script
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag von witzigerkiller »

so, hier:

Code: Alles auswählen

<form action="#" method="post" name="lala">
 <table>
  <tr>
   <td>BBCODE:</td>
  </tr>
  <tr>
   <td><textarea cols="25" rows="6" name="bbcode"></textarea><td>
  </tr>
  <tr>
   <td><input type="button" name="lulu" value="B" onClick="document.lala.bbcode.value += ' [b] '"></td>
  </tr>
  <tr>
   <td>
   <input type="button" name="lulu" value="B" onClick="document.lala.bbcode.value += ' [/b] '"></td>
  </tr>
  <tr>
   <td><input type="submit" name="Submit" value="TEst" /></td>
  </tr>
 </table>
</form>

<?PHP

if (isset($_POST['Submit']))
{
    $bbcode[1] = "[b]";
    $bbcode[2] = "[/b]";
    
    $ersatz[1] = "<b>";
    $ersatz[2] = "</b>";
    
    $eintrag = preg_replace($bbcode, $ersatz, $_POST['bbcode']);
    
    // Jetzt str&auml;gst du das $eintrag in die datenbank ein
    
    /* wenn du das eingetragene abfragst: z.b mit while($daten=mysql_fetch_assoc($query))
       dann mach:
       
       echo nl2br($daten['eintrag']); 
       
    */
}

?>
SyneX
Mitglied
Beiträge: 73
Registriert: 26.03.2004 12:11

Beitrag von SyneX »

Ich hätte das schon gerne (wie ich schon zweimal sagte), dass die funktionen von phpbb beutzt werden. Da der BBcode ja immer erweitert werden könnte und ich somit keine lust habe, das bei beiden seiten zu machen
SyneX
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

SyneX hat geschrieben:Ich hätte das schon gerne (wie ich schon zweimal sagte), dass die funktionen von phpbb beutzt werden. Da der BBcode ja immer erweitert werden könnte und ich somit keine lust habe, das bei beiden seiten zu machen
ehm o.ô du schreibst das einmal z.B als bbcode_ext.php oder so ähnlich

Code: Alles auswählen

<?php
function bbcode($text)
{
$text = htmlspecialchars($text);
$text = str_replace("[b]", "<b>", $text);
$text = str_replace("[/b], "</b>", $text);

$text = str_replace("[i]", "<i>", $text);
$text = str_replace("[/i]", "</i>", $text);
// Und weitere Funtkionen
}
?>
und dann includierst du das in deine Skripte rein

Code: Alles auswählen

include("bbcode_ext.php");
Und wenn du dann einen Text hast der durch BBCode ersetzt werden soll dann machst du das so:

Code: Alles auswählen

$message = bbcode($message);
Und jeder BBCode wird umgewandelt der du in der function bbcode(); definierst hast o.ô
SyneX
Mitglied
Beiträge: 73
Registriert: 26.03.2004 12:11

Beitrag von SyneX »

naja so dumm bin ich nicht mehr... wollte eigentlich die phpbb funktionen benutzen, werde jetzt aber wohl doch das selber machen müssen
SyneX
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag von witzigerkiller »

was ist denn bitte nicht zu verstehen?

Bitte das folgende nciht ernst nehmen:

"Wie können es für Ausländer -> z.b. Chinesn"

gerne wiederholen.

Dann sind halt kommentare drinne :-)
Antworten

Zurück zu „Coding & Technik“