Formmailer + Datendisplay ?
RH-Grassl
- php
0 Vinzenz
Hallo
Hoffe das nur ein kleiner Syntaxfehler(Klammer etc.) vorliegt, kann aber
(wahrscheinlich)auch sein das ich mit mit meinen Lösungsansa(e)tz(en) total
falsch liege.
Ich möchte Formulardaten mittels eines "Formmailers" versenden (was für
sich alleine wunderbar klappt),
Und mit der selben Submitübergabe soll der User informiert werden, welche
Daten er versendet hat.
Also 2 Bedingungen mit je 1 Anweisung.
Kann man beide Aufgaben irgendwie miteinander verbinden.
Mittels "Verkettung" zweier Funktionen? oder....
Ich hab schon mehr als 20 Varianten probiert.
Anbei unten das Form-Script und die letzte Version PHP-Formmailer-Scripts
samt letzter Fehlermeldung.
Danke für eure Hilfe
Gruß
Robert
--
we come from nothing, and we go to nothing; so what have we lost: NOTHING!
always look at the bright Side of Life...
Formmailer.php
<?php
function formmail()
{
$admin = "magicweb@chello.at";
$subject = "PHP-Mail";
$message = "Nachricht fuer $admin von $email:\n\n";
do
{
if ($sent & $name) {
while(list($name,$value)=each($HTTP_POST_VARS))
{
$message.="$name: $value\n\n";
}
mail($admin,$subject,$message,"From: $email");
echo <<<FORMANSWER
Sie haben folgende Nachricht gesendet:<p />
<b>Ihr Name:</b> $name<br />
<b>E-Mail:</b> $email<br />
<b>Adresse:</b> $adresse<br />
<b>Ihre Nachricht:</b> <br />
<div style="background-color:#DDDDDD">$nachricht</div>
<b>Gekauft bei: </b>$purchase
FORMANSWER;
}
}
}
formmail();
?>
----------------------------------------
Parse error: parse error, unexpected '}', expecting T_WHILE in
/usr/local/httpd/vhosts/fally/fally.akis.at/htdocs/formmailer.php on line 36
--------------------------------------------------
Formkontakt.htm
<form method="post" action="formmailer.php">
<p>Name:<br>
<input type="text" name="name">
<br>
E-Mail:<br>
<input type="text" name="email"><br>
Adresse<br>
<input type="text" name="adresse"><br>
Nachricht:<br>
<textarea name="nachricht" cols="40" rows="7"></textarea>
<br>
<input type="submit" name="senden" value="senden">
<input type="hidden" value="1" name="sent"
</form>
Hallo Robert,
Hallo
...
Ich möchte Formulardaten mittels eines "Formmailers" versenden (was für
sich alleine wunderbar klappt),
Und mit der selben Submitübergabe soll der User informiert werden, welche
Daten er versendet hat.
Also 2 Bedingungen mit je 1 Anweisung.
Nicht zwei Bedingungen sondern zwei Aktionen willst Du ausführen.
Kann man beide Aufgaben irgendwie miteinander verbinden.
Mittels "Verkettung" zweier Funktionen? oder....
Das ist eine gute Idee, nenne sie doch z.B.
info
rueckmeldung
samt letzter Fehlermeldung.
do
Wo steht das dazugehörige while (...) dazu?
Überprüfe den restlichen Code
{
if ($sent & $name) {
while(list($name,$value)=each($HTTP_POST_VARS))
Das ist es nicht, das ist ein neue while-Schleife
Zusätzliche Anmerkung $HTTP_POST_VARS solltest Du nicht mehr
verwenden, siehe auch http://de2.php.net/variables.predefined
{
$message.="$name: $value\n\n";
}
// Ende while-Block
mail($admin,$subject,$message,"From: $email");
... Anweisungen ...
}
// Ende if-Block
}
// Hier Ende do - und da gehört while(...) hin
Zumindest von der Syntax - und weil es da nicht steht, sondern
}
meckert der Parser diese Klammer an, er hat ja ein "while" erwartet
Parse error: parse error, unexpected '}', expecting T_WHILE in
/usr/local/httpd/vhosts/fally/fally.akis.at/htdocs/formmailer.php on line 36
formmail(); // Das ist die Info-Mail an Dich
Und nun solltest du mit
rueckmeldung();
dafür sorgen, dass der Benutzer auch mitkriegt, was er eingegeben hat.
Du kannst ihm beispielsweise eine Seite erzeugen mit seinen Eingaben,
Du könntest ihn zusätzlich per Mail informieren (falls er eine Mail-Adresse eingegeben hat).
Freundliche Grüße,
Vinzenz