Formulardaten, HTML, Email, versand? HILFE?

abert

Grünschnabel
Hallo zusammen,

Ich habe mir untenstehendes Formular erstellt und möchte jetzt die Daten per email als html code versenden.
Das ganze funktioniert eigentlich schon wunderbar. Jetzt möchte ich noch die Formulardaten die der User in das Formular eigetragen hat (wie Name, Vorname, Tel, Fax etc) auch via email irgendwie in den html text code der $message variablen eintragen lassen und das ganze dann sauber quasi in eine Tabelle verpacken.
Meine Frage: Ist dies möglich? Wenn ja würde ich mich super freuen wenn mir jemand den Lösungsvorschlag kurz beschreiben würde. Bin nämlich blutiger PHP Anfänger und bin schon stolz sowas überhaupt auf die Beine gebracht zu haben ;-) Danke schon mal Ciao Tom


Code:
<p><b><font face="Verdana" color="#0099CC" size="3">Formularanfrage</font></b></p>
<?

$pfemail  = "aberttho@gmail.com" . ", " ;
$subject = "Anfrage";
$message = '
<?
<html>
<head>
 <title></title>
</head>
<body>
<p>
</p>
<table>
 <tr>
  <th>Name</th><th>Tag</th><th>Monat</th><th></th>
 </tr>
 <tr>
  <td>Joe</td><td>3.</td><td>August</td><td>1970</td>
 </tr>
 <tr>
  <td>Sally</td><td>17.</td><td>August</td><td>1973</td>
 </tr>
</table>
</body>
</html>?>
';

$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

/* zusätzliche Header */
$headers .= "To: aberttho <aberttho@gmail.com>, aberttho <aberttho@gmail.com>\r\n";
$headers .= "From: $name <$sender>\r\n";
$headers .= "Cc: bhvkde@t-online.de\r\n";
$headers .= "Bcc: bhvkde@t-online.de\r\n";


if ($button) {
          if (!$name or !$sender) {
                    echo '<p><b><font color="#CC0000">Bitte überprüfen Sie Ihre Eingabe - es sind nicht alle Felder ausgefüllt</font></b></p>';
          }
          else {
                    echo "<p><b>Vielen Dank für Ihre Anfrage, wir werden Sie so schnell wie möglich beantworten</b></p>";
                    mail("$pfemail", "$subject", "$message", "$headers");
          }
}
else {
echo '<form name="angebot" action="'.$PHP_SELF.'" method="post">


        <table border="4" id="table2" width="451" cellspacing="1" height="32" bordercolor="#0099CC" style="border-collapse: collapse">
          <tr>
            <td align="right" bgcolor="#FFFFFF" valign="bottom" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <p style="margin-right: 0px; margin-bottom: 0px">
                        <img border="0" src="../pf/11.jpg" width="45" height="29"><img border="0" src="../pf/2.jpg" width="45" height="29"></td>
          </tr>
          </table>
        <table border="4" id="table3" width="451" bordercolor="#0099CC" style="border-collapse: collapse" cellspacing="1">
          <tr>
            <td align="right" bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <font color="#0099CC" face="Verdana">Name</font></td>
            <td bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <font size="3" face="Verdana" color="#FFFFFF">
              <input tabIndex="1" size="15" name="name"></font></td>
          </tr>
                        <tr>
            <td align="right" bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <font color="#0099CC" face="Verdana">Vorname</font></td>
            <td bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <font size="3" face="Verdana" color="#FFFFFF">
              <input tabIndex="2" size="15" name="vorname"></font></td>
          </tr>
                        <tr>
            <td align="right" bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <font color="#0099CC" face="Verdana">Strasse / Nr</font></td>
            <td bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <font size="3" face="Verdana" color="#FFFFFF">
              <input tabIndex="3" size="15" name="strasse"></font><font face="Verdana" color="#FFFFFF">&nbsp;
              </font><font size="3" face="Verdana" color="#FFFFFF">
              <input tabIndex="4" size="5" name="nr"></font></td>
          </tr>
          <tr>
            <td align="center" bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <p align="right">
                        <font color="#0099CC" face="Verdana">PLZ / Ort</font></td>
            <td bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <font size="3" face="Verdana" color="#FFFFFF">
              <input tabIndex="5" maxLength="5" size="6" name="plz"></font><font face="Verdana" color="#FFFFFF">&nbsp;
              </font><font size="3" face="Verdana" color="#FFFFFF">
              <input tabIndex="6" size="15" name="ort"></font></td>
          </tr>
          <tr>
            <td align="right" bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <font color="#0099CC" face="Verdana">Telefonnummer</font></td>
            <td bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <font size="3" face="Verdana" color="#FFFFFF">
              <input tabIndex="7" size="15" name="tel"></font></td>
          </tr>
          <tr>
            <td align="right" bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <font color="#0099CC" face="Verdana">Faxnummer</font></td>
            <td bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <font size="3" face="Verdana" color="#FFFFFF">
              <input tabIndex="8" size="15" name="Faxnummer"></font></td>
          </tr>
          <tr>
            <td align="right" bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <font color="#0099CC" face="Verdana">Email-Adresse</font></td>
            <td bgcolor="#FFFFFF" bordercolorlight="#0099CC" bordercolordark="#0099CC">
                        <font size="3" face="Verdana" color="#FFFFFF">
              <input tabIndex="9" size="15" name="sender"></font></td>
          </tr>
          </table>
        <p><font face="Verdana" color="#FFFFFF"><input type="submit" value="absenden" name="button" tabindex="10"></font></p>
</td></tr></table></form>';
}
?>
 
Das ist kein Problem - Du versendest das Formular ja mit POST. Das heiß du musst auch mit POST auf die Formulardaten zugreifen: $_POST['namedesinputfeldes'] enthält also demnach den Inhalt des Formularfeldes mit dem Namen "namedesinputfeldes".

Die Ausgabe ist dann auch nicht mehr schwer:
PHP:
<?

$pfemail  = "aberttho@gmail.com" . ", " ;
$subject = "Anfrage";
$message = "<html>
<head>
 <title></title>
</head>
<body>
<p>
</p>
<table>
 <tr>
  <th>Name</th><th>Tag</th><th>Monat</th><th></th>
 </tr>
 <tr>
  <td>" . $_POST['name'] . "</td><td>" . $_POST['tag'] . ".</td><td>" . $_POST['monat'] . "</td><td>" . $_POST['jahr'] . "</td>
 </tr>
 <tr>
  <td>Sally</td><td>17.</td><td>August</td><td>1973</td>
 </tr>
</table>
</body>
</html>";
/// weiter im PHP-Code...
Bitte beachte die kleinen Änderungen am Code - ich habe es nun so gemacht, dass der Quelltext _direkt_ in der Vaiablen steht. Desweiteren habe ich die ' ' gegen " " , da der Inhalt zwischen ' ' nicht geparst wird.
Hoffe das war verständlich - falls nicht einfach weiterfragen.. :)

Biite beachte aber
 
hallo moritz,
danke für die super schnelle rückantwort hab das ganze jetzt ausprobiert aber irgendwie klappt das ganze leider nicht so wie ich will...

muss ich den Parameter $_POST['name'] dann nur oben in dem message text eintragen der dann versendet werden soll oder auch bei den inputfeldern? könntest du mir des noch irgendwie genauer erläutern vielleicht mit nem beispiel. ciao tom
 
Ok, ich versuchs:
Also du hast folgendes Formular:
Code:
<form action="ausgabe.php" mathod="POST" name="testform">
     <input type="text" name="inhalt">
     <input type="submit">
</form>
Drückst du in o.a. Formular auf den Absenden-Button, "stellt" das Formular die Daten aus den Input-Feldern der Datei "ausgabe.php"(also der in der Formular-Action angegebenen Datei) "zur Verfügung" .
Deine ausgabe.php:
PHP:
<?php
echo $_POST['inhalt'];
?>
Die PHP-Datei macht also nichts anderes als den Inhalt des Form-Feldes "inhalt" auszugeben.
Beispiel:
Du gibsts in das Formular "Hallo Welt" ein und drückst den Abschicken-Button. Dann gibt dir die PHP-Datei - du wirst es sicher ahnen - "Hallo Welt" aus.
Ich hoffe das war verständlich. Da du doch noch ein rechter Anfänger bist, empfehle ich dir
http://www.schattenbaum.net/php/ Da wird alles sehr einfach und anschaulich erklärt. Desweiteren findest du dort mein kleines Beispiel.
 
Zurück