Interpretation von HTML-Tags in Textfeldern

Fragen zur Implementierung und/oder Anpassung von ConPresso 4 werden in diesem Forum diskutiert.
Benutzeravatar
Marky
ConPresso-Checker
Beiträge: 382
Registriert: 11.12.2005 15:29
Hat sich bedankt: 29 Mal
Danksagung erhalten: 18 Mal
Kontaktdaten:

Interpretation von HTML-Tags in Textfeldern

Beitrag von Marky »

Hi, ich verwende zur Eingabe von Artikelttext in meinem Template nachfolgende Variable:

<!-- Text: Artikeltext; nl2br; -->

Ich habe jetzt festgestellt, dass HTML-Tags nach dem Parsen zu Entities werden. Wenn ich z.B. <b>Hallo Welt</b> im Textfeld eingebe, dann wir in der Seite <b>Hallo Welt</b> draus und nicht wie erwartet Hallo Welt
Ich dachte wenn ich nicht strip_tags in der Variablen verwende, dann könnte ich auch HTML-Tags im Text selbst verweden, die dann auch interpretiert werden ?

Gruß
Marky
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

Das hast Du falsch interpretiert
Vor der Umwandlung der HTML-Sonderzeichen werden HTML-Tags entfernt.
heißt soviel wie, daß alle HTML-Tags entfernt werden und nur die verbleibenden Sonderzeichen wie & in &amp; und < in &lt; umgewandelt werden.
Ganz am Anfang der Beschreibung von Textfeldern steht ja, daß ALLE HTML-Entities umgewandelt werden und
Sie eignen sich besonders um den Redakteuren die Moeglichkeiten einer HTML-Formatierung zu verbieten
Daß das funktioniert hast Du damit bewiesen :twisted:

Für die Eingabe von HTML-Texten benutzt man die HTML-Felder.

Wenn Du den Editor nicht verwenden willst, dann suche in
_include/function.php die Zeile

Code: Alles auswählen

    $UA = $_SERVER['HTTP_USER_AGENT'];
und schreibe davor

Code: Alles auswählen

return false;
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
Marky
ConPresso-Checker
Beiträge: 382
Registriert: 11.12.2005 15:29
Hat sich bedankt: 29 Mal
Danksagung erhalten: 18 Mal
Kontaktdaten:

Beitrag von Marky »

Hi,

also ich will den Editor tatsächlich nicht verwenden und habe die Änderung eingebaut. Tut sich aber nix :cry:

Gruß
Marky
Dateianhänge
hack.jpg
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

Was heißt "tut sich aber nix" ???

Es soll sich ja auch nichts tun und unter Deinen HTML-Feldern soll
Please note that your browser (Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)) is not capable of rich-text-editing, so you can only edit the HTML-Code in the textarea above.
stehen statt dem Link zum Editor. Wir reden hier ja über HTML und Nichtverwenden des Editors.

Textfelder sind immer noch Textfelder und keine HTML-Felder...

Dein Kommentar "damit die Textfelder kein HTML rauswerfen" mußt Du ändern in "damit die HTML-Felder nicht mit dem blöden Editor bearbeitet werden, den ich ja nicht haben möchte..."
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
Marky
ConPresso-Checker
Beiträge: 382
Registriert: 11.12.2005 15:29
Hat sich bedankt: 29 Mal
Danksagung erhalten: 18 Mal
Kontaktdaten:

Beitrag von Marky »

Was heißt "tut sich aber nix" ???
:rofl: Ich lieg' gerade flach vor lachen ... OK, Du hast mich verwirrt und so hab' ich Dich auch verwirrt. Unabsichtlich.

Ich denke, ich habe es jetzt kapiert. Problem ist, dass sich die Änderung auch auf den Template-Editor auswirkt. Das heißt, dort hätte ich ja ganz gerne den HTML-Editor noch und nach der Änderung werden daraus einfache Textfelder.
Aber sei's drum. Es ist ok. Ich verwende grundsätzlich keine HTML-Felder für meine Redakteure und seit neustem auch keine HTML-Tags mehr in normalen Textfeldern! :wink:
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

Ja wie, Editor nicht haben wollen und dann doch haben wollen??? :?: :twisted: :twisted: :twisted:

Dann mach das anders:
1.) Änderung in function.php rückgägngig
2.) in _include/form_fields.php

Suche:

Code: Alles auswählen

    if (!RTECheck()) {
Ersetze mit

Code: Alles auswählen

    if (true) {
Dann darf der Chef mit dem Editor in templates spielen, die bösen Redakteure laufen aber auf Handbetrieb :twisted: :mrgreen:
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
Marky
ConPresso-Checker
Beiträge: 382
Registriert: 11.12.2005 15:29
Hat sich bedankt: 29 Mal
Danksagung erhalten: 18 Mal
Kontaktdaten:

Beitrag von Marky »

Aaaaaalso:

1. Deine Änderung funktioniert soweit. Erstmal besten Dank dafür!!!

Was ich mit
also ich will den Editor tatsächlich nicht verwenden
gemeint habe ist, dass ich das Teil grundsätzlich gar nicht verwenden wollte. Sollte deshalb nicht eingebaut werden!

Mein ursprüngliches Ansinnen war, dass ich HTML-Code im normalen Texteditor verweden kann. Wie ich erfahren habe, geht das ja nun nicht. Ich müßte dazu den HTML-Editor verwenden. Nur in dem kann man soviel falsch machen, dass ich den einem "normalen" Redakteur nicht an die Hand geben kann.
Nach Deiner Änderung klappts nun. Perfekt!
Allerdings fehlt mir nun im "an die Kette gelegten HTML-Editor" ein wichtiges Feature nämlich "nl2br".
Hast Du da noch einen Hack auf Lager ? Das wäre nämlich dann der Idealfall!

Gruß
Marky
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

Probiere folgendes:

schreibe in
_include/parser_r_html.inc.php
vor der Zeile

Code: Alles auswählen

$replacement = $_t;
noch folgendes

Code: Alles auswählen

if (array_key_exists('nl2br', $parameters)) {
    $_t = nl2br($_t);
}
damit sollte nl2br auch dort funzen...
(was in HTML aber ja eigentlich nicht erwünscht ist...)
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
Marky
ConPresso-Checker
Beiträge: 382
Registriert: 11.12.2005 15:29
Hat sich bedankt: 29 Mal
Danksagung erhalten: 18 Mal
Kontaktdaten:

Beitrag von Marky »

STRIKE !!! :D
Funktioniert wie erhofft !!!
(was in HTML aber ja eigentlich nicht erwünscht ist...)
ja, stimmt nur ist es ja jetzt quasi ein Zwitter ...


Besten Dank!
Marky
Benutzeravatar
Marky
ConPresso-Checker
Beiträge: 382
Registriert: 11.12.2005 15:29
Hat sich bedankt: 29 Mal
Danksagung erhalten: 18 Mal
Kontaktdaten:

Beitrag von Marky »

SHIT! :cry:
Ich krieg aber mit dieser Lösung Probleme mit Semfs LatestNews.
Ich habe im Artikeltemplate für den Teaser-Bereich ein IFSET drin für den Weiter-Link. Wenn Artikel-Text vorhanden ist usw ...
Ich nehme an, dass dann das Modul Probleme kriegt, wenn es nachschaut, ob Artikeltext vorhanden ist und Artikeltext ist das eben das beschnittene HTML-Feld.
Dateianhänge
error.jpg
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

Das kan ich mir ehrlich gesagt gar nicht vorstellen, daß dies Auswirkungen haben sollte.
Der Parser nimmt alle Parameter in ein array auf. Wenn die zu irgendwas passen, dann wird der Inhalt entsprechend modifiziert. Wenn nicht, dann eben nicht.
Das if-Tag prüft ja nur, ob es überhaupt Inhalt gibt, nicht was da drin steht.
Prüfe doch nochmal Deine Änderungen... :gruebel:
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
Marky
ConPresso-Checker
Beiträge: 382
Registriert: 11.12.2005 15:29
Hat sich bedankt: 29 Mal
Danksagung erhalten: 18 Mal
Kontaktdaten:

Beitrag von Marky »

Hallo Markus,

sieht aber ganz so aus.
Ich habe im Teaser-Bereich des Artikeltemplates das IFSET, in dem die Variable vorkommt, rausgenommen.
Danach in der Variablen Text mit HTML ersetzt und abgespeichert. Es wird daraus Dein beschriebenes, abgespecktes HTML-Feld.
:shock: --> Kein Fehler.

Das ganze wieder rückgängig gemacht. Template gespeichert.
:cry: --> und wieder der gleiche Fehler.

:gruebel:
Benutzeravatar
balu
ConPresso-Entwickler
Beiträge: 1748
Registriert: 01.01.1970 01:00
Hat sich bedankt: 81 Mal
Danksagung erhalten: 133 Mal

Beitrag von balu »

Ich bin mir nicht ganz sicher, aber den Fehler habe ich gesehen, wenn ein verschiedene Platzhaltertypen mit demselben Namen benutzt werden.

Hast Du sowohl Text- als auch HTML-Platzhalter mit demselben Namen? Sonst versuch mal einen davon umzubenennen.

Balu
Benutzeravatar
Marky
ConPresso-Checker
Beiträge: 382
Registriert: 11.12.2005 15:29
Hat sich bedankt: 29 Mal
Danksagung erhalten: 18 Mal
Kontaktdaten:

Beitrag von Marky »

Hi,

genau das war der Grund!. Ich hatte einfach aus der Variablen Text:VarName --> HTML:VarName gemacht, den bestehenden Artikel editiert und dann nochmal abgespeichert. Das erzeugte dann die Probleme.
Besten Dank für den Hinweis. Somit kann ich das jetzt tatsächlich umstellen.

Gruß
Marky
Benutzeravatar
semf
Modul-Entwickler
Beiträge: 1853
Registriert: 01.01.1970 01:00
Wohnort: Gütersloh-Friedrichsdorf
Hat sich bedankt: 14 Mal
Danksagung erhalten: 40 Mal
Kontaktdaten:

Beitrag von semf »

@marky:

eine Frage hätte ich noch - du hast in diesem Zusammenhang dann aber
sicher auch den Platzhalternamen im IFSET angeändert, oder?
(Es geht mir um die Problematik zwei gleichnamige
Platzhalter + IFSET = gelegentliche Probleme!)
Viel Erfolg!

Module ConPresso 4.x
Latest News
Tell-a-friend

Module ConPresso 3.4.x
Index_X
Kontakt
RSS-Feed
Umfrage
Gästebuch
Tell-a-Friend

Modul-Download
Antworten