View previous topic :: View next topic |
Author |
Message |
-=miko=- Smarty Rookie
Joined: 11 Jul 2006 Posts: 13
|
Posted: Sat Jul 15, 2006 5:49 pm Post subject: <input ...>mit Variable ??? |
|
|
Hallo Leute,
ich habe ein kleines Problem:
Code: |
$smarty->assign('INPUT_NAME', '<input type="text" name="name" value="ein Wert" />');
|
klappt ohne Probleme, jetzt möchte ich aber value="ein Wert" durch eine Variable ersetzen.
So klappt es leider nicht:
Code: |
$wert = "ein Wert";
$smarty->assign('INPUT_NAME', '<input type="text" name="name" value="$wert" />');
|
Hat jemand eine Ahnung wie das klappen könnte ?
Gruß, Michael |
|
Back to top |
|
Twilo Smarty Regular
Joined: 13 Jan 2005 Posts: 88 Location: Berlin
|
Posted: Sat Jul 15, 2006 6:48 pm Post subject: Re: <input ...>mit Variable ??? |
|
|
Hallo,
-=miko=- wrote: | Code: | $wert = "ein Wert";
$smarty->assign('INPUT_NAME', '<input type="text" name="name" value="$wert" />'); |
|
wie wäre es, wenn du das PHP Manual mal befragen würdest?!
in einfachen Anfühungszeichen werden keine Variablen ersetzt!
entweder
[php:1:cf15ef4a8f]$smarty->assign('INPUT_NAME', "<input type=\"text\" name=\"name\" value=\"$wert\" />");[/php:1:cf15ef4a8f]
oder so
[php:1:cf15ef4a8f]$smarty->assign('INPUT_NAME', '<input type="text" name="name" value="'.$wert.'" />');[/php:1:cf15ef4a8f]
oder so
[php:1:cf15ef4a8f]$smarty->assign('INPUT_NAME', sprintf('<input type="text" name="name" value="%s" />', $wert));[/php:1:cf15ef4a8f]
es gibt bestimmt noch zig andere Varianten das Problem zu lösen
mfg
Twilo _________________ Twilo | Farbtabelle |
|
Back to top |
|
Twilo Smarty Regular
Joined: 13 Jan 2005 Posts: 88 Location: Berlin
|
|
Back to top |
|
-=miko=- Smarty Rookie
Joined: 11 Jul 2006 Posts: 13
|
Posted: Sun Jul 16, 2006 5:36 am Post subject: |
|
|
Hallo Twilo,
vielen Dank für Deine Hilfe.
Quote: | wie wäre es, wenn du das PHP Manual mal befragen würdest?! |
ja, nee is klar, mach ich ja, aber wie das nun mal so bei Anfängern ist, sieht man vor lauter " und ' den richtigen Code nicht mehr
Deine Varianten klappen alle. Die beiden ersten Varianten hatte ich auch schon, nur da habe ich mir selber einen Fehler eingebaut.
Die eleganteste Lösung ist glaube ich Variante 2, sehr übersichtlich und einfach zu schreiben.
Vielen Dank noch mal und ein schönes WE.
Gruß, Michael |
|
Back to top |
|
Twilo Smarty Regular
Joined: 13 Jan 2005 Posts: 88 Location: Berlin
|
Posted: Sun Jul 16, 2006 11:36 am Post subject: |
|
|
-=miko=- wrote: | Hallo Twilo,
Die eleganteste Lösung ist glaube ich Variante 2, sehr übersichtlich und einfach zu schreiben. |
was meinst du jetzt mit 2?
fängst du 0 oder bei 1 an zu zählen? _________________ Twilo | Farbtabelle |
|
Back to top |
|
-=miko=- Smarty Rookie
Joined: 11 Jul 2006 Posts: 13
|
Posted: Sun Jul 16, 2006 11:46 am Post subject: |
|
|
Quote: | fängst du 0 oder bei 1 an zu zählen? |
"normale" Menschen fangen bei 1 an zu zählen.
PHP-Könner fangen bei 0 an zu zählen.
jetzt bin ich verwirrt
ich bin weder noch ein normaler Mensch noch ein PHP-Könner.
HIIIILFE |
|
Back to top |
|
Twilo Smarty Regular
Joined: 13 Jan 2005 Posts: 88 Location: Berlin
|
Posted: Sun Jul 16, 2006 2:41 pm Post subject: |
|
|
sagen wir mal so
wenn du mir sagst, was du mit "Die beiden ersten Varianten" meinst, versteh ich sicherlich auch das 2.
meinst du mit "Die beiden ersten Varianten" Variante 1 und 2
und mit 2 dann Variante 3 oder wieder die 2.?
fragen über fragen _________________ Twilo | Farbtabelle |
|
Back to top |
|
-=miko=- Smarty Rookie
Joined: 11 Jul 2006 Posts: 13
|
Posted: Sun Jul 16, 2006 2:54 pm Post subject: |
|
|
Hallo Twilo,
damit wir nicht weiter aneinander vorbei reden
Quote: | meinst du mit "Die beiden ersten Varianten" Variante 1 und 2 | ja!
Variante 1: (zu viele \ dadurch unübersichtlich und fehleranfällig)
Code: | $smarty->assign('INPUT_NAME', "<input type=\"text\" name=\"name\" value=\"$wert\" />"); |
Variante 2: (die für mich die elegante Lösung)
Code: | $smarty->assign('INPUT_NAME', '<input type="text" name="name" value="'.$wert.'" />'); |
Variante 3: (ist ok)
Code: | $smarty->assign('INPUT_NAME', sprintf('<input type="text" name="name" value="%s" />', $wert)); |
Gruß, Michael |
|
Back to top |
|
gnuffmaster Smarty Elite
Joined: 13 Jul 2006 Posts: 440 Location: Düsseldorf, Germany
|
Posted: Tue Jul 18, 2006 9:32 pm Post subject: Re: <input ...>mit Variable ??? |
|
|
-=miko=- wrote: | Hallo Leute,
ich habe ein kleines Problem:
Code: |
$smarty->assign('INPUT_NAME', '<input type="text" name="name" value="ein Wert" />');
|
klappt ohne Probleme, jetzt möchte ich aber value="ein Wert" durch eine Variable ersetzen.
So klappt es leider nicht:
Code: |
$wert = "ein Wert";
$smarty->assign('INPUT_NAME', '<input type="text" name="name" value="$wert" />');
|
Hat jemand eine Ahnung wie das klappen könnte ?
Gruß, Michael |
Irgendwie reichlich unsinnig was Du da vor hast. Wieso denn das ganze Input Feld an Smarty übergeben. Pack das Input Feld doch in dein Template und dann übergib nur den Wert für Value an Smarty. So macht das dann auch wieder Sinn.
Achso, falls Du dies tust, um das Inputfeld nur in bestimmten Fällen anzeigen zu lassen, auch dies geht wunderbar durch Abfragen im Template.
Nochwas Variablen in Strings zu nutzen ist immer Käse. Besser dann den String unterbrechen. Ist zwar etwas umständlicher aber wenigstens sauber.
also z.B.:
[php:1:8ad9115468]$strText = "Hallo hier kommt eine ".$variable." rein.";[/php:1:8ad9115468] |
|
Back to top |
|
|