Signatur auf externer Seite verändern

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
Hasu0bs

Signatur auf externer Seite verändern

Beitrag von Hasu0bs »

Hallo zusammen.

Ich habe ein Problem. Und Zwar will ich die Signatur eines Users auf einer externen Seite erstellen und ändern können. Die Signatur selbst wird ja in user_sig gespeichert, aber sie wird so (natürlich) noch nicht angezeigt. Was muss ich noch tuen, damit sie richtig verändert wird?
In der Tabelle gibt es ja auch noch ein feld user_sig_bbcode_uid in der 10 Zeichen stehn aber wie man die ermittelt, hab ich nich so ganz verstanden... :-?

Danke schonmal :-P

Hasu0bs
Hasu0bs

Selbst geschafft :-P

Beitrag von Hasu0bs »

Hallo nochmal...
Ich habs nach 3 Stunden auch so hinbekommen.Für alle die, dies interessiert:
  1. eine 10-stellige Hexadezimalzahl ausdenken. ZB.: $bbcodeuid = "b9f09ad60c";
  2. diese jetz bei jedem user der die Signatur bekommt in die Datenbank unter user_sig_bbcode_uid eintragen
  3. bei user_attachsig eine 1 setzen
  4. in der Signatur alle bbcodes(bis auf url, email und quote=) erweitern. D. h. [ b]hallo[ /b] wird zu [b:b9f09ad60c]hallo[/b:b9f09ad60c]. (natürlich die gewählte $bbcodeuid nehmen.)
  5. die Signatur ins Feld user_sig eintragen
Meine Funktion zum Verändern der Signatur:

Code: Alles auswählen


function bbcodeforum($str) {
    $bbcodeuid = "b9f09ad60c";

        $str = preg_replace('=\[b\](.*)\[/b\]=Uis',
                            '[b:'.$bbcodeuid.']\1[/b:'.$bbcodeuid.']',
                            $str);
        $str = preg_replace('=\[i\](.*)\[/i\]=Uis',
                            '[i:'.$bbcodeuid.']\1[/i:'.$bbcodeuid.']',
                            $str);
        $str = preg_replace('=\[u\](.*)\[/u\]=Uis',
                            '[u:'.$bbcodeuid.']\1[/u:'.$bbcodeuid.']',
                            $str);
        $str  = preg_replace('#\[\*\](.*)\n#Umi',
                             '[*:'.$bbcodeuid.']\1',
                             $str);
        $str = preg_replace('=\[img\](.*)\[/img\]=Uis',
                            '[img:'.$bbcodeuid.']\1[/img:'.$bbcodeuid.']',
                            $str);
        $str = preg_replace('#\[quote\](.*)\[\/quote\]#Uis',
                            '[quote:'.$bbcodeuid.']\1[/quote:'.$bbcodeuid.']',
                            $str);
        $str = preg_replace('#\[code\](.*)\[\/code\]#Uis',
                            '[code:'.$bbcodeuid.']\1[/code:'.$bbcodeuid.']',
                            $str);
        $str = preg_replace('#\[color=(.*)\](.*)\[\/color\]#Uis',
                            '[color=\1:'.$bbcodeuid.']\2[/color:'.$bbcodeuid.']',
                            $str);
        $str = preg_replace('#\[size=(.*)\](.*)\[\/size\]#Uis',
                            '[size=\1:'.$bbcodeuid.']\2[/size:'.$bbcodeuid.']',
                            $str);
        $str = preg_replace('#\[list\](.*)\[\/list\]#Uis',
                            '[list:'.$bbcodeuid.']\1[/list:'.$bbcodeuid.']',
                            $str);
        $str = preg_replace('#\[list=(.*)\](.*)\[\/list\]#Uis',
                            '[list=\1:'.$bbcodeuid.']\2[/list:'.$bbcodeuid.']',
                            $str);
        return $str;
}
Ich hoffen ich konnte irgendwem helfen :-P

Gruß Hasu0bs
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Man kann übrigens auch die vorhandenen Funktionen bbencode_first_pass() und bbencode_second_pass() nutzen.

Siehe auch: KB:bbcode_uid
KB:knigge
Antworten

Zurück zu „Coding & Technik“