HTML table bei Version 2.0.21

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Eddie Felson
Mitglied
Beiträge: 44
Registriert: 15.01.2005 19:34
Wohnort: Berlin

HTML table bei Version 2.0.21

Beitrag von Eddie Felson »

Ich hatte bis zur Version 2.0.19, erfolgreich HTML Tabellen mit vernünftigen Rahmen verwendet. Seid dem Update auf 2.0.21, wird die Tabelle zwar noch aufgebaut, jedoch fehlen alle senkrechten und waagerechten Striche, zwischen den Zeilen/Spalten.

Eine Überprüfung ergab, das bestimmte tags, nach dem posten, von der Forensoftware einfach gelöscht werden.

Gesendet:

Code: Alles auswählen

<table width=100 border=2 cellspacing=3 cellpadding=5>
Wenn ich danach nochmals auf edit klicke

Code: Alles auswählen

<table>
Ist natürlich klar das dann die Rahmen fehlen. Ich habe alles mögliche versucht, um die tags, border usw. freizugeben, aber vergeblich. Ich denke das ist eine neue Sicherheitsfunktion - aber kann man die abschalten/umgehen?

Sehr merkwürdig ist auch, dass diese Filterung auch erfolgt, wenn ich meinem Partner, dieses Posting als Privat Massage schicke. Das heißt die Filterung erfolgt bei uns sogar, wenn CODE drum steht. Genau dieser Punkt sagt mir, dass hier im Board, das problem wohl nicht bestehen würde - aber warum?

Erlaubte HTML-Tags: b,i,u,pre,table,p,div,font,td,tr

/edit
Eddie Felson
Mitglied
Beiträge: 44
Registriert: 15.01.2005 19:34
Wohnort: Berlin

Beitrag von Eddie Felson »

Hat niemand eine Ahnung?

Merkwürdig ist auch, wenn schon die Forensoftware, die Umformatirung der Tabelle nicht zu läßt und mit einer Standard Einstellung arbeitet, warum diese dann keine Tabellenstriche enthällt. Das macht IMHO nicht den geringsten Sinn.
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Naja, die Standardversion ist so "standard" ja nicht, schließlich hängt sie u.a. vom Template ab. In vielen Templates werden Tabellen zur Layoutbildung verwendet, da ist es an vielen Stellen nicht erwünscht, dass da irgendwelche Linien erscheinen. Ich würde dir empfehlen mal nach den Tabellen bbCodes zu suchen, auch wenn ich die noch nicht getestet habe kann man mit den bbCodes in der entsprechenden bbcode.tpl selbst beeinflussen, wie die Tabelle dargestellt wird. Wenn es die nicht hier in der ModDB gibt, dann auf phpbb.com.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Eddie Felson
Mitglied
Beiträge: 44
Registriert: 15.01.2005 19:34
Wohnort: Berlin

Beitrag von Eddie Felson »

Danke für die Antwort.
Ich wollte eigentlich nicht unbedingt einen Mod einspielen, da sie ja doch u.U. spätere updates ganz schön erschweren können. Wenns aber nicht anders geht, werde ich das notgedrungen so machen müssen. Schade das phpBB nicht standartmäßig Tabellen kann. Manchmal wäre es schon hilfreich, wenn wenigstens das tabulieren möglich wäre. Ich weiss, dafür gibt es auch einen Mod :wink:
Eddie Felson
Mitglied
Beiträge: 44
Registriert: 15.01.2005 19:34
Wohnort: Berlin

Beitrag von Eddie Felson »

Weiteres Beispiel aus dem Handbuch

Code: Alles auswählen

<span color="red">Roter Text</span>
Angezeigt wird

Roter Text < aber leider in schwarz :lol:

Wenn ich jetzt in den Code sehe:

Code: Alles auswählen

<span color="red">Roter Text</span>
(es hat sich nichts verändert)

Nehme ich aber jetzt die Anführungszeichen weg und poste

Code: Alles auswählen

<span color=red>Roter Text</span>
und editiere danach erneut, sieht der code dann so aus:

Code: Alles auswählen

<span>Roter Text</span>
Das ist im prinzip das gleiche wie oben beobachtet, beweißt aber dass das Handbuch nicht stimmt.
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Jede HTML Tagfreigabe hat den Nachteil, dass sie das gesamte Layout zerstören kann, BBcodes kannst du sogar an jeden Style individuell anpassen und so garantieren, dass sie den Style eben nicht zerstören. Ein bbCode Mod hält sich - was die Dateienzahl angeht (2 Stück) - in Grenzen, dass das ganze die Updates erschwert wäre wohl nicht zu vermeiden.

Wie dem auch sei, für die "Umformatierung" des HTML Quellcodes ist die folgende Stelle zuständig:

Code: Alles auswählen

 if ($html_on)
  48      {
  49          // If HTML is on, we try to make it safe
  50          // This approach is quite agressive and anything that does not look like a valid tag
  51          // is going to get converted to HTML entities
  52          $message = stripslashes($message);
  53          $html_match = '#<[^\w<]*(\w+)((?:"[^"]*"|\'[^\']*\'|[^<>\'"])+)?>#';
  54          $matches = array();
  55  
  56          $message_split = preg_split($html_match, $message);
  57          preg_match_all($html_match, $message, $matches);
  58  
  59          $message = '';
  60  
  61          foreach ($message_split as $part)
  62          {
  63              $tag = array(array_shift($matches[0]), array_shift($matches[1]), array_shift($matches[2]));
  64              $message .= preg_replace($html_entities_match, $html_entities_replace, $part) . clean_html($tag);
  65          }
  66  
  67          $message = addslashes($message);
  68          $message = str_replace('"', '\"', $message);
  69      }
Findet sich in der functions_post.php unter prepare_message. Ich habe gerade keine ältere phpBB Version da, aber wenn du sie noch hast könntest du das ja mal vergleichen.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Eddie Felson
Mitglied
Beiträge: 44
Registriert: 15.01.2005 19:34
Wohnort: Berlin

Beitrag von Eddie Felson »

:o Danke :)

Ich habe den code eben nur überflogen, aber es sieht fast so aus, als müßte man nur eine einzige Zeile ändern, um das script wirkungslos zu machen.

Was ich nicht verstehe - es werden ständig neue Sicherheiten eingebaut, aber eine die logisch wäre, wird nicht eingebaut. Nämlich das nur bestimmte benutzergruppen oder gar nur Admins überhaupt html posts machen können.
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Ließe sich genau an dieser Stelle einbauen, aber stimmt schon, diese Einschränkung wäre meiner Meinung nach auch sinnvoll, es kann schon mal sein, dass es praktisch ist wenn HTML erlaubt ist, aber genau daran scheitert es dann.

Ob es aber sinnvoll ist, den ganzen Codeausschnitt "unbrauchbar" zu machen wage ich zu bezweifeln.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Benutzeravatar
mark2
Mitglied
Beiträge: 454
Registriert: 22.02.2006 23:05
Wohnort: Kempten

Beitrag von mark2 »

Eddie Felson hat geschrieben:Was ich nicht verstehe - es werden ständig neue Sicherheiten eingebaut, aber eine die logisch wäre, wird nicht eingebaut. Nämlich das nur bestimmte benutzergruppen oder gar nur Admins überhaupt html posts machen können.
Ja das stört mich auch gerade.
Wollte es gerade aktivieren und festgestellt dass dann jeder html posten kann.
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Die Aktivierung oder Deaktivierung erfolgt über die Settings Tabelle des Forums. Diese wird aber in einer zentralen Datei ein einziges Mal nur abgefragt und in einer Variablen $board_config gespeichert. Wenn zu diesem Zeitpunkt schon bekannt wäre, ob der User Admin ist oder nicht wäre die Erlaubnis ganz simpel einzubauen. Leider ist die Abfrage dieser Tabelle eine der ersten Dinge die passieren, somit auch bevor "bekannt" ist was für ein User da ist. Wenn man jetzt aber in den Session Funktionen - die ja auch in jeder Datei aufgerufen werden - beim Admin die entsprechende Variable auf 1 setzt dann sollte das für alle Funktionen und Bereiche gelten, selbst wenn für alle anderen HTML weiterhin verboten ist. Die Schutzmechanismen greifen auch weiterhin, es müssen also die für den Admin erlaubten Tags im ACP freigegeben werden.

Man müsste lediglich vor dem hier in der sessions.php

Code: Alles auswählen

return $userdata;
}

//
// Checks for a given user session, tidies session table and updates user
// sessions at each page refresh
//
das hier einfügen:

Code: Alles auswählen

if($userdata['user_level'] == ADMIN)
{
$board_config['allow_html'] = 1;
}
Wichtig: Alle Dateien vor der Änderung sichern! Ich habe das nicht getestet und übernehme keine Garantie! Bitte auf jeden Fall testen ob mit einem anderen Account HTML möglich ist. HTML im ACP muss AUS sein damit es nur für den Admin erlaubt ist.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“