Textarea + variablen aus MYSQL + ausgeben

itmpatti

Mitglied
Hallo,
also, ich habe eine kleine KundenDatenbank in PHP und MYSQL geschrieben.

man kann eine Mail an einen bestimmten Kunden senden.

Ich gebe mal ein Besiel:

- es gibt die Zelle NAME
- es gibt in einer Zelle einen Standart-Text, der zum Versenden der Mail an den User ist.
Dieser Text Lautet *Hallo $Name*
- es gibt ein Textarea, wo der Text reingeladen wird, dieser Text kann weiter verändert werden.
- es gibt einen Senden-Button, zum versenden der Mail.


Nun zu meinem eigentlichen Problem:

nun möchte ich, dass die Variablen, wie *$Name* aus gelesen werden und in dem Textarea dargestellt werden.
Es wird immer nur *Hallo $Name* ausgegeben.

Wie bekomme ich es hin, dass die Variablen ausgelesen werden, befor sie in dem Textarea ausgegeben werden?

Wisst ihr, was ich meine?

Gruß
Patrick
 
Zuletzt bearbeitet:
z.B. so (aber eval == evil! Mach dich auf die Suche nach nem Template Parser,
wenn du den von Nils hier aus den Tutorials nimmst und ein bisschen um-
schreibst kannst du gleich den benutzen):
Code:
eval( "printf( \"<textarea attribut=\\\"wert\\\">%s</textarea>\", \"".hmtlentities( str_replace( "\"", "\\\"", $sDeinText ) )."\" ); ");
 
ähhhm du willst das man im Feld Name was angibt und dann darunter in der Textarea steht "hallo Name" ? falls ja würd ich mal mehr nach einem Javascript schauen, das den Text dann unten reinschreibt. Sowas ist schnell gemacht. Falls nein kläre mich auf wo $name herkommt ;)

vielleicht $name mit in den JS übergeben... oder so aber so 100% verstehe ich nicht worauf du hinaus willst... vielleicht tuts aber ein anderer
 
OK, nach ein wenig suchen habe ich das Formular gefunden :-)

ich bin mir zwar immer noch nicht sicher, aber ich versuche es mal mit folgendem:

Beim echo-Befehl kann man mit einfachen oder doppelten Anführungszeichen arbeiten. Steht in dem String eine Variable, dann wird diese nur bei der Version mit doppelten Anführungszeichen durch den Wert der Variable ersetzt.

Beispiel:

echo "$name" gibt den Inhalt der Variablen $name aus.

echo '$name' gibt so wie bei Dir $name aus (und NICHT den Inhalt).


könnte das das Problem sein?


Dunsti
 
hmmm...
ich habe es geändert...

also die VAR Name wird auf jeden Fall da oben, wo der Name steht schon mal aus der db gesucht...

versuche du es mal...

und dann lege mal 4 kunden an...
bei Kundennummer 3 hört er bei mir immer auf zu zählen..
gib einfach irgend welche daten ein...

die url hast du noch?
 
ja, die URL habe ich noch, aber Du hast mich anscheinend nicht richtig verstanden.

ok, das Beispiel noch etwas deutlicher:

PHP:
$name = "Andreas"

echo "bla bla $name bla bla"; //Ausgabe: bla bla Andreas bla bla

echo 'bla bla $name bla bla'; //Ausgabe: bla bla $name bla bla

Wichtig ist also das allererste Anführungszeichen direkt nach dem Echo-Befehl und das allerletzte vor dem Semikolon.
Ich vermute, daß Du dort die einfachen Anführungszeichen hast, da Du ja im HTML-Tag von dem Formular die doppelten Anführungszeichen verwendest.


Poste bitte mal die Code-Zeile, die den Formularkopf ausgibt. (Bitte den gesamten String, falls er über mehrere Zeilen geht ... also alles vom echo bis zum Semikolon)

Zu dem anderen Problem: wie ermittelst Du die Kundennummer?

Dunsti
 
also,

hier das Textarea:
PHP:
<textarea name=\"Text\" rows=\"17\" cols=\"50\" style=\"color: #0000FF; background-color: #CCCCCC\">$get[Emailtext]</textarea>

hier der get-befehl:
PHP:
mysql_select_db($db,$link);
$query = "SELECT * FROM Texte";
$result = mysql_query($query,$link);
$get = mysql_fetch_array($result1,MYSQL_ASSOC);

und das wird dann an mail-2 weitergegeben: (das in der grauen Tabelle)
PHP:
echo "<TABLE bgcolor=\"#C0C0C0\"><TR><TD class=\"main\">$Text</TR></TD></TABLE>";

mail ("$mail(WIRD IN mail1 durch HIDDEN weitergegeben)", "Ware losgeschickt", "$Text", "From: itmpatti");


und hier ist meine KundennummerErmittlung:
PHP:
mysql_select_db($db,$link);
$query = "SELECT * FROM Daten";
$result = mysql_query($query,$link);
$get = mysql_fetch_array($result,MYSQL_ASSOC);
$Kundennummer = "$get[Kundennummer]";
$KN = $Kundennummer +1;
 
Zurück