MyBB.de Forum
HTML in Profilfeldern? - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html)
+--- Forum: Plugin-Diskussionen (https://www.mybb.de/forum/forum-38.html)
+--- Thema: HTML in Profilfeldern? (/thread-1640.html)

Seiten: Seiten: 1 2 3 4 5 6


RE: HTML in Profilfeldern? - modercol - 19.03.2009

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>";
            }
        } 



RE: HTML in Profilfeldern? - Michael - 20.03.2009

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>";




RE: HTML in Profilfeldern? - Susanne - 22.04.2009

(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?


RE: HTML in Profilfeldern? - Michael - 22.04.2009

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); 



RE: HTML in Profilfeldern? - Susanne - 22.04.2009

Das bringt leider noch keine Änderung.
Bei allow html habe ich vorher eine 1 gesetzt, hat aber nichts gebracht.


RE: HTML in Profilfeldern? - Michael - 22.04.2009

Wie sieht die Ausgabe denn genau aus? Handelt es sich bereits um HTML-Code oder ist der MyCode noch zu sehen?


RE: HTML in Profilfeldern? - Susanne - 22.04.2009

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.


RE: HTML in Profilfeldern? - Michael - 22.04.2009

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.


RE: HTML in Profilfeldern? - Susanne - 22.04.2009

Oh, wie schade! Gilt das auch für das HTMLerlauben im Profil?


RE: HTML in Profilfeldern? - Michael - 22.04.2009

Ja. HTML zu erlauben bergt immer ein gewisses Risko. Genau aus diesem Grund gibt es ja nur sowas wie BBCode.