PHP: UBB-Code

Hi,
Ich bin (immer noch) daran mir ein Gästebuch in PHP zu schreiben. Eigentlich klappt alles ganz gut. Nur das mit dem UBB-Code bekomme ich noch nicht ganz hin...
Die Datei soll den UBB-Code durch HTML-Code ersetzen.
Bei einfachen Sachen wie [ b ] oder [ i ] funktioniert es ja so ganz gut:

PHP:
ereg_replace(\"[b]\",\"<b>\",$message);
ereg_replace(\"[/b]\",\"</b>\",$message);
Aber wie soll das gehen mit solchen Sachen wie Links einfügen?
Also wenn der Code so aussieht:
[ URL=http://hallo.de]Ein Link[/ URL]

???
danke,
cu,
little_Newbie
 
PHP:
<?
$input = \"[url=http://www.boppy.de]text link[/url]\";

$url = explode(\"]\",$input);
$url[0] = ereg_replace(\"\[url=\",\"\",$url[0]);

$text = ereg_replace(\"\[url=[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]\]\", \"<a href=\\"\". $url[0] .\"\\">\", $input);
$text = ereg_replace(\"\[/url\]\", \"</a>\", $text);

echo $text;
?>
Ich denke, dass es bessere möglichkeiten gibt, aber vielleicht ist es eine denkanregung *g*
 
hi boppy!
danke so geht's.
Nun aber mal ne Frage zum Code. Schließlich will ich ihn ja auch verstehen :) .
Was bedeuten die im ersten ereg_replace() enthaltenen :alpha:. :alnum: und :space: ?
vielen dank.
cu,
little_Newbie
 
:alpha:
-> Alle Aphazeichen, also: abcdefghijklmnopqrstuvwxyz (ich gluabe samt sonderzeichen, wie é? usw usf)
:alnum:
-> Alle Aphanumerischenzeichen, also abcdefghijklmnopqrstuvwxyz1234567890
:space:
-> Leeschritte. SpaceTaste eben :))
:print:
Alle druckbaren zeichen. Ausgenommen sind äöü usw. Machbar sind jedoch !"%$&)/( usw usf.
 
danke boppy.
Aber ich habe noch ein kleines Problem mit dem Script.
Es erkennt nur Links, wenn dessen Text ein Leerzeichen enthällt.
woran liegt das?
cu und danke!!!
little_Newbie
 
Zurück
Oben