Nov
7
Hallo Mit-PHP'ler
Ich habe ein Problem mit meiner WebApp und ich hätte gerne ein paar Tips von euch. Es kommt ja vor dass so DAU's auf der Webseit einfach so aus Spaß die Fignern icht von eienr Taste lassen können und einem tonnenweise un-umbrechbaren Text reinknallen (200 Zeichen lang nur 'm').
Meine erste Lösung war: JS-Version von wordwrap auf alle Felder jagen wo das passieren kann (es lebe das PHP.JS Projekt). 3 Zeilen jQuery später und ein paar Kilobyte reicher ging das alles super.
Das große ABER: das Zeug taucht nun auf einmal nicht nur auf einer Seite auf sondern überall UND ich will den HTML-Code eigentlich als Grundlage zum PDF generieren verwenden (mein Tip hier: TcPDF auf basis von FPDF), insofern scheidet (speziell wg. letztem Punkt) die JS-Lösung aus.
Ich habe ein Problem mit meiner WebApp und ich hätte gerne ein paar Tips von euch. Es kommt ja vor dass so DAU's auf der Webseit einfach so aus Spaß die Fignern icht von eienr Taste lassen können und einem tonnenweise un-umbrechbaren Text reinknallen (200 Zeichen lang nur 'm').
Meine erste Lösung war: JS-Version von wordwrap auf alle Felder jagen wo das passieren kann (es lebe das PHP.JS Projekt). 3 Zeilen jQuery später und ein paar Kilobyte reicher ging das alles super.
Das große ABER: das Zeug taucht nun auf einmal nicht nur auf einer Seite auf sondern überall UND ich will den HTML-Code eigentlich als Grundlage zum PDF generieren verwenden (mein Tip hier: TcPDF auf basis von FPDF), insofern scheidet (speziell wg. letztem Punkt) die JS-Lösung aus.
Nun stellt sich mir die Frage wo ich den wordwrap nun serverseitig
mache. Wenn ich das beim Speichern der Daten schon mache, dann
verändere ich zum Einen das was der User eingibt und das ist eine
rechtliche Frage ob man das überhaupt tun darf. Auf der anderen Seite
kann es damit natürlich vorkommen dass der String doch so lang wird
dass er nicht mehr ins DB Feld passt und abgeschnitten wird, insofern
kommt das eigentlich nicht in Frage.
Wenn ich das allerdings erst bei der Ausgabe mache bzw. beim Schreiben der Variablen ins Template, dann muss ich nun überall so ein dämliches wordwrap drumrumbauen, was Leistung ohne Ende fressen wird (zu 99+% sinnlos) und tonnenweise Codeanpassung zur Folge hat.
Meine schlaue Idee war es nun dass man doch ganz einfach das fertig generierte HTML nimmt und dort den wordwrap drüberjagt, was aber auch nicht geht weil einem die HTML-Tags und -Umlaute einen Strich durch die Rechnung machen (z.B. "<select>Arbeitsangebote<option>Fährenkapitän</option></select>" wird total zerlegt und zerstört das HTML).
Deshalb meine Fragen:
a) wie macht ihr das?
b) gibt es vielleicht eine HTML-sichere Variante von wordwrap (nach 30 Min. Google nix gefunden) die das HTML ignoriert und sich nur auf den textuellen Inhalt konzentriert?
Ich hoffe ihr habt da schon was Tolles dass sich in 3 Min einbauen lässt ;-)
Danke,
Michael
Wenn ich das allerdings erst bei der Ausgabe mache bzw. beim Schreiben der Variablen ins Template, dann muss ich nun überall so ein dämliches wordwrap drumrumbauen, was Leistung ohne Ende fressen wird (zu 99+% sinnlos) und tonnenweise Codeanpassung zur Folge hat.
Meine schlaue Idee war es nun dass man doch ganz einfach das fertig generierte HTML nimmt und dort den wordwrap drüberjagt, was aber auch nicht geht weil einem die HTML-Tags und -Umlaute einen Strich durch die Rechnung machen (z.B. "<select>Arbeitsangebote<option>Fährenkapitän</option></select>" wird total zerlegt und zerstört das HTML).
Deshalb meine Fragen:
a) wie macht ihr das?
b) gibt es vielleicht eine HTML-sichere Variante von wordwrap (nach 30 Min. Google nix gefunden) die das HTML ignoriert und sich nur auf den textuellen Inhalt konzentriert?
Ich hoffe ihr habt da schon was Tolles dass sich in 3 Min einbauen lässt ;-)
Danke,
Michael



0 Trackbacks