RH-Grassl: Formmailer + Datendisplay ?

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>

  1. 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