Author Topic: Variablen in Textarea einfügen = Zeilenumbruch geht verloren  (Read 1071 times)

0 Members and 1 Guest are viewing this topic.

Offline kekz

  • Newbie
  • *
  • Posts: 1
Hallo,

ich möchte mehrere Werte in ein Textfeld (textarea) schreiben.
Hier der ungefähr der Aufbau:

Code: [Select]
$tmpl->setVar(item1,vLIB);
$tmpl->setVar(item2,ist);
$tmpl->setVar(item3,genial);

HTML:
Code: [Select]
<textarea type="text" name="nachricht" cols="60" rows="30">item1: {tmpl_var name=item1}
item2: {tmpl_var name=item2}
item3: {tmpl_var name=item3}
<textarea>

So soll es sein:
item1: vLIB
item2: ist
item3: genial

So wird es dargestellt:
item1: vLIBitem2: istitem3: genial

Leider geht der im HTML-Template vorhandene Zeilenumbruch verloren. Wie kann ich das verhindern?

Gruß
Kekz

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Re: Variablen in Textarea einfügen = Zeilenumbruch geht verloren
Reply #1 on: Fri, 19. October 2007 - 13:00:51
Zuallererst ist Deine Benutzung der "setvar"-Methode falsch.

Es muss heißen:
Code: [Select]
$tmpl->setVar(item1, vLIB);denn Du übergibst ein STRING und keine KONSTANTE.

Das Verhalten mit den fehlenden Zeilenumbrüchen ist ein Fehler, der seit Jahren bekannt ist, aber laut Kelvin (Oirignal-Autor von vLIB) nicht gefixt werden kann.

Hier hilft nur folgendes:

Code: [Select]
<textarea type="text" name="nachricht" cols="60" rows="30">
{tmpl_var name=der_gesamte_inhalt}
<textarea>

Die Variable "der_gesamte_inhalt" bereitest Du dann in PHP auf. Ob mit str_replace oder dem Verkettungsoperator ist völlig egal.

Ein Beispiel was man mit "str_replace" und vlibTemplate gemacht werden kann, siehst du in folgendem Post:
Platzhalter in Variablen?

Gruß
Claus
Last Edit: Fri, 19. October 2007 - 13:04:42 by ClausVB