Hallo Rolf,
tja, da werde ich Dir jetzt nicht helfen können - dafür müsste ich ein eigenes Testprojekt aufsetzen. Das ist mir zu viel Arbeit. Ist dein Projekt irgendwo online?
Das verstehe ich gut. Und nein, ist nicht online.
Was ich nur nicht verstehe:
Aus diesem BBcode:
[center][size=3][b]BBCode SCEditor[/b][/size][/center]
Give it a try! :)
[color=#ff00]Red text! [/color][color=#3399ff]Blue?[/color]
[ul]
[li]A simple list[/li]
[li]list item 2[/li]
[/ul]
If you are using IE9+ or any non-IE browser just type [b]:[/b]) and it should be converted into :) as you type.
[ul]
[li]test[/li]
[li]test2[/li]
[li]test3[/li]
[li]test4[/li]
[/ul]
generiert die Klasse obigen html-Code.
Und bei meiner Durchsuche nach br-Tags finde ich im kompletten Ordner (inkl. Unterordner) nur eine einzige Zeile, in der ein br-Tag überhaupt vorkommt, nämlich
new BBCode('br', '<br />', BBCode::INLINE_TAG, true),
Diese scheint mir aber gar nicht ursächlich für die vielen br-Tags, denn selbst wenn ich die Zeile entferne, bleiben mächtig viele <br> übrig.
Und ich finde keinen Hinweis im Script, wo die her kommen.
Jörg
Edit: Ok, da scheint es eine Option zu geben, ob man auf jede neue Zeile nl2br anwendet:
public function get_html($nl2br=true)
{
if(!$nl2br)
return str_replace(" ", " ", htmlentities($this->text, ENT_QUOTES | ENT_IGNORE, "UTF-8"));
return str_replace(" ", " ", nl2br(htmlentities($this->text, ENT_QUOTES | ENT_IGNORE, "UTF-8")));
}
Damit wird es klarer.