Hallo
Ich habe eine Webseite erstellt und dazu noch ein Gästebuch (PHP)
Nun möchte ich, dass der Benutzer BB-Code eingeben kann, um den Text zu formatieren.
Wie kann ich das machen?
Nino
Hallo
Ich habe eine Webseite erstellt und dazu noch ein Gästebuch (PHP)
Nun möchte ich, dass der Benutzer BB-Code eingeben kann, um den Text zu formatieren.
Wie kann ich das machen?
Nino
Guten Tag,
Hi erstmal kannst du mir erstmal die Adresse der HP geben dann kann ich dir vielleicht helfen
MfG TiMMy
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hi erstmal kannst du mir erstmal die Adresse der HP geben dann
kann ich dir vielleicht helfen
MfG TiMMy
Ach ja, die Adresse der HP ist: http://www.hirngespinst.tk
oder http://hirngespinst.bplaced.net
Es ist eine Schülerzeitung.
Hallo!
Warum mein Vorredner die URL braucht weiss ich zwar nicht, aber ich paste hier dir einfach mal „blöde“ eine Standardfunktion (gibt verschiedenste Varianten) rein:
function bbcode($str)
{
$bbcodes = array(
'url' =\> array(2, '[${2}](%2524%257B1%257D)'),
'email' =\> array(2, '[${2}](mailto:%24%7B1%7D)'),
'color' =\> array(2, '${2}'),
'b' =\> array(1, ' **${1}**'),
'u' =\> array(1, '<u>${1}</u>'),
'i' =\> array(1, '_${1}_'),
'center' =\> array(1, '${1}'),
'img' =\> array(1, ''),
);
while (list($t, $s) = each($bbcodes))
{
$pattern = '';
switch ($s[0])
{
case 1: $pattern = "#\[$t\](.\*)\[/$t\]#isU"; break;
case 2: $pattern = "#\[$t=([^]]+)\](.\*)\[/$t\]#isU"; break;
}
if ($pattern)
while ($str != ($str = preg\_replace($pattern, $s[1], $str, -1)));
}
return $str;
}
(damn, , und wird selbst in „pre“ interpretiert… sollte so wie bei „center“ aussehen; für DAS bekomm ich jetzt eh nen Einlauf )
Einfach den Gästebuchtext über die Funktion laufen lassen! Zumindest bei mir tut es im Gästebuch
grüße
Geisterkarle
Ich weis nicht wie ich den Code in mein PHP-Dokument einbauen soll. (Bin PHP-Laie.)
Der Code von meinem Gästebuch:
<?php function no_reload()<br />{
$gleichheit = false;
if (isset($\_POST["uw"])) {
$datei = "unique.txt";
$fp = fopen($datei, "r+");
$aw = fgets($fp, 30);
if ($aw == $\_POST["uw"]) {
$gleichheit = true;
}
rewind($fp);
fputs($fp, $\_POST["uw"]);
fclose($fp);
}
return $gleichheit;
}
$unique = no\_reload();
// Dateiname in Variable speichern
$datei = "comment.txt";
// Variable Kommentar gesetzt? Name und E-Mail nicht leer?
if (!empty($\_POST["comment"]) && !empty($\_POST["name"]) && !empty($\_POST["Email"]) && !$unique) {
$comment = $\_POST["comment"];
$name = $\_POST["name"];
$Email = $\_POST["Email"];
// Datei wird im Lese- und Schreib-Modus geöffnet
$fp = fopen($datei, "r+");
// alte Daten herauslesen und in $old sichern
$old = fread($fp,filesize($datei));
// E-Mail-Link entsteht
$Email = "[$Email";
// Datum ermitteln und formatieren
$datum = date("j.n.Y");
// HTML-Zeichen maskieren, Slashes weg, Umbrüche erhalten
$comment = htmlspecialchars($comment);
$comment = stripslashes($comment);
$comment = nl2br($comment);
// Meinung zusammensetzen
$meinung=" **$name** ($Email) schrieb am " .
"_$datum_:
$comment \n";
// Dateizeiger marschiert an den Anfang
rewind($fp);
// neue Meinung vor alte in Datei schreiben
fputs($fp, "$meinung \n $old");
// Datei schließen
fclose($fp);
}
readfile($datei);
?\>
](mailto:%24Email)
Hallo!
Ist ganz einfach:
Der Code von meinem Gästebuch:
<?php :function no_reload()
{ [snip] }
Hier einfach rein:
function bbcode($str)
{
[snip]
}
und dann deinen Kommentartext darüber laufen lassen, wie auch mit nl2br etc. schon gemacht:
[snip]
$comment = htmlspecialchars($comment);
$comment = stripslashes($comment);
$comment = nl2br($comment);
$comment = bbcode($comment);
[snip]
?>
Alles andere bleibt ([snip] bedeutet, dass ich das aus Übersichtlichkeit hier nicht zitiere, aber beibehalten )
Sollte eigentlich tun
grüße
Geisterkarle