Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste
HTML in Profilfeldern?
#31
Muss das ganze dann so aussehen:
PHP-Code:
        if(is_array($useropts) && ($type == "multiselect" || $type == "checkbox"))
        {
            foreach(
$useropts as $val)
            {
                if(
$val != '')
                {
                require_once 
MYBB_ROOT."inc/class_parser.php";
                
$parser = new postParser;
                
$parser_options = array(
                    
"allow_html" => 1,
                    
"allow_mycode" => 1,
                    
"allow_smilies" => 1,
                    
"allow_imgcode" => 1
                
);
                
$customfieldval .= $parser->parse_message("<li style=\"margin-left: 0;\">{$val}</li>"$parser_options);
                }
            }
            if(
$customfieldval != '')
            {
                
$customfieldval "<ul style=\"margin: 0; padding-left: 15px;\">{$customfieldval}</ul>";
            }
        } 
Keinen Support per PN, eMail und Messenger
computerhartware.de
GIGA - Spielen geht immer!
Zitieren
#32
PHP-Code:
require_once MYBB_ROOT."inc/class_parser.php";
$parser = new postParser;
$parser_options = array(
    
"allow_html" => 1,
    
"allow_mycode" => 1,
    
"allow_smilies" => 1,
    
"allow_imgcode" => 1
);

if(
$val != '')
{
    
$val $parser->parse_message($val$parser_options);
    
$customfieldval .= "<li style=\"margin-left: 0;\">{$val}</li>";


Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#33
(04.10.2008, 15:36)StefanT schrieb: Probiere:
PHP-Code:
if($customfield['type'] == "textarea")
            {
                require_once 
MYBB_ROOT."inc/class_parser.php";
                
$parser = new postParser;
                
$parser_options = array(
                    
"allow_html" => 1,
                    
"allow_mycode" => 1,
                    
"allow_smilies" => 1,
                    
"allow_imgcode" => 1
                
);
                
$customfieldval $parser->parse_message($userfields[$field], $parser_options);
            } 
Habe ich gerade eingesetzt. Jetzt sieht man im Profil zwar die kleinen Grafiken, statt des Codes, dafür ist aber in allen Beiträgen, unter dem Userfoto, wo sonst diese Grafiken auch erschienen, nur noch ellenlanger Code zu sehen. Wie bekomme ich das wieder hin?
VG,
Susanne
Zitieren
#34
Du musst auch in der Datei inc/functions_post.php den Profilfeldinhalt durch den Parser schicken. Versuchs mal unter dieser Zeile:
PHP-Code:
$post[$post_field] = htmlspecialchars_uni($field_value); 
So müsste es dann aussehen:
PHP-Code:
$post[$post_field] = htmlspecialchars_uni($field_value);
require_once 
MYBB_ROOT."inc/class_parser.php";
$customparser = new postParser;
$customparser_options = array(
    
"allow_html" => 0,
    
"allow_mycode" => 1,
    
"allow_smilies" => 1,
    
"allow_imgcode" => 1
);
$post[$post_field] = $customparser->parse_message($post[$post_field], $customparser_options); 

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#35
Das bringt leider noch keine Änderung.
Bei allow html habe ich vorher eine 1 gesetzt, hat aber nichts gebracht.
VG,
Susanne
Zitieren
#36
Wie sieht die Ausgabe denn genau aus? Handelt es sich bereits um HTML-Code oder ist der MyCode noch zu sehen?

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#37
Nein, das muss ich besser erklären.
In der "postbit_author_user" habe ich das hier stehen
PHP-Code:
{$post[fid7]}<br />{$post[fid8]}<br />{$post[fid9]}<br /> 
Das wurde bisher immer automatisch in die entsprechende Grafik/Icons umgewandelt.
Jetzt nach dem Update sieht es so aus
   
Und als ich deinen Code einsetzte, hat sich daran nichts geändert.
VG,
Susanne
Zitieren
#38
Ok, dann haben wir aneinander vorbeigeredet.

HTML in Profilfeldern zu erlauben ist grundsätzlich ein Sicherheitsrisiko, da ein Benutzer z.B. auch einen Code für eine Weiterleitung unterbringen kann. Deshalb wurde das mit MyBB 1.4.5 geändert, damit man die Variablen $post['fidX'] gefahrlos direkt im Template postbit_author_user unterbringen kann.

Folgender Codeblock in der Datei inc/functions_post.php ist dafür verantwortlich:
PHP-Code:
    // Sanatize our custom profile fields for use in templates, if people choose to use them
    
foreach($post as $post_field => $field_value)
    {
        if(
substr($post_field03) != 'fid')
        {
            continue;
        }
        
$post[$post_field] = htmlspecialchars_uni($field_value);
    } 
Wenn du diesen Teil entfernst, verhält sich das Forum wie in vorherigen Versionen. Allerdings ist es dann wieder möglich, dass HTML-Code ungefiltert neben Beiträgen ausgegeben wird.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#39
Oh, wie schade! Gilt das auch für das HTMLerlauben im Profil?
VG,
Susanne
Zitieren
#40
Ja. HTML zu erlauben bergt immer ein gewisses Risko. Genau aus diesem Grund gibt es ja nur sowas wie BBCode.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  HTML-Ausgabe in Profilfeldern Limping Cat 1 1.671 30.04.2014, 18:41
Letzter Beitrag: StefanT