Angaben werden nicht mit gesendet

Wolf of Doom

Erfahrenes Mitglied
hi

irgendwie werden die angaben im contact form nicht mit gesendet

contactform
PHP:
<HTML>
<title>Contact</title>
<body bgcolor="#FFFFFF" text="#000000">
<form method="post" action="send.php">

<table width="75%" border="0">
  <tr> 
    <td width="10%">Name:</td>
    <td width="90%">
        <input type="text" name="$name" value=" $name">
    </td>
  </tr>
  <tr> 
    <td width="10%">E-Mail:</td>
    <td width="90%">
        <input type="text" name="E-mail:" value="$email">
    </td>
  </tr>
  <tr> 
    <td width="10%">Website:</td>
    <td width="90%">
        <input type="text" name="Website:" value="$website">
    </td>
  </tr>
  <tr> 
    <td width="10%">Nachricht:</td>
    <td width="90%">
        <textarea name="nachricht" cols="30" rows="10">$nachricht</textarea>
<INPUT TYPE="hidden" NAME="userip" VALUE="<? echo $REMOTE_ADDR; ?>">

    </td>
  </tr>
  <tr> 
    <td width="10%">&nbsp;</td>
    <td width="90%">
      <input type="submit" name="Abschicken" value="senden">
      <input type="reset" name="del" value="l&ouml;schen">
    </td>
  </tr>
  <tr> 
    <td width="10%">&nbsp;</td>
    <td width="90%">&nbsp;</td>
  </tr></table>
</form> </body> </html>
send.php

PHP:
<? 
  $addr = GetEnv("REMOTE_ADDR");
  $host = GetEnv("REMOTE_HOST");
  $body = "Aufgegeben von Host " . $host . ", IP-Adresse " . $addr . "\n\n";
  if  (IsSet($Name)) { $body = $body . "Name:  " . $Name  . "\n"; }
  if (IsSet($EMail)) { $body = $body . "EMail: " . $EMail . "\n"; }
  if (IsSet($TelNr)) { $body = $body . "TelNr: " . $TelNr . "\n"; }
  $comment1 = ereg_replace("\015\n","\n",$comment);
  $body = $body . ereg_replace("\015","\n",$comment1);
  
  mail("root@t-screen.de","nachricht",$body);
?>
<HEAD>
<TITLE>Ihre Mitteilung</TITLE>
</HEAD>
<BODY>
<H1>Nachricht erfolgreich abgeschickt!</H1>
Vielen Dank für Ihre Nachricht!
<P>
</BODY>

thx & cya
wolf
 
Das Problem liegt ganz einfach daran, dass die Variablennamen im Formular nicht mit den abgerufenen im Script übereinstimmen. So müsste es eigentlich laufen:

Code:
<HTML>
<title>Contact</title>
<body bgcolor="#FFFFFF" text="#000000">
<form method="post" action="send.php">

<table width="75%" border="0">
  <tr> 
    <td width="10%">Name:</td>
    <td width="90%">
        <input type="text" name="name" value="$name">
    </td>
  </tr>
  <tr> 
    <td width="10%">E-Mail:</td>
    <td width="90%">
        <input type="text" name="email" value="$email">
    </td>
  </tr>
  <tr> 
    <td width="10%">Website:</td>
    <td width="90%">
        <input type="text" name="website" value="$website">
    </td>
  </tr>
  <tr> 
    <td width="10%">Nachricht:</td>
    <td width="90%">
        <textarea name="nachricht" cols="30" rows="10">$nachricht</textarea>
<INPUT TYPE="hidden" NAME="userip" VALUE="<? echo $REMOTE_ADDR; ?>">

    </td>
  </tr>
  <tr> 
    <td width="10%">&nbsp;</td>
    <td width="90%">
      <input type="submit" name="Abschicken" value="senden">
      <input type="reset" name="del" value="l&ouml;schen">
    </td>
  </tr>
  <tr> 
    <td width="10%">&nbsp;</td>
    <td width="90%">&nbsp;</td>
  </tr></table>
</form> </body> </html>

PHP:
<? 
  $addr = GetEnv("REMOTE_ADDR");
  $host = GetEnv("REMOTE_HOST");
  $body = "Aufgegeben von Host " . $host . ", IP-Adresse " . $addr . "\n\n";
  if (IsSet($name)) { $body = $body . "Name:  " . $name  . "\n"; }
  if (IsSet($email)) { $body = $body . "EMail: " . $email . "\n"; }
  if (IsSet($telnr)) { $body = $body . "TelNr: " . $telnr . "\n"; }
  $comment1 = ereg_replace("15\n","\n",$comment);
  $body = $body . ereg_replace("15","\n",$comment1);
  
  mail("root@t-screen.de","nachricht",$body);
?>
<HEAD>
<TITLE>Ihre Mitteilung</TITLE>
</HEAD>
<BODY>
<H1>Nachricht erfolgreich abgeschickt!</H1>
Vielen Dank für Ihre Nachricht!
<P>
</BODY>

Du hast übrigens das Feld TelNr. im Formular vergessen.
Immer auf Groß-/Kleinschreibung bei Variablen achten!
 
hi,
also im feld deines formulares :name="$name" value=" $name">
da muss stehen : name="name" value=" $name">
War ne Variable zuviel.
Die anderen Zeilen müssen auch identisch sein->prüfen

Die Mail machst du am besten so:
# Das steht in der Mail: ########################
$message= "Guten Tag, '$nickname'\n
Sie haben Ihr Passwort vergessen
und eine entsprechende Abfrage in Ihrem
Admin-System gestartet.\n
Hier das Ergebnis:\n
Ihr Passwort ist '$passwort'
Ihr Benutzername ist '$nickname'\n
Viele Gruesse.
Ihr Masteradmin-System\n\n\n\n
";

oder einfach nur $message=$nachricht


# Empfänger festlegen ###########################
$mailto = "$email";
$cc = "";
$bcc = "";
##################################################
$subject = "Ihre Nachricht";
$from = "deine@adresse.de";
##### bilde kompletten Mailstring ################
mail( "$mailto", "$subject", "$message", "From:$from\nCC:$cc\nBCC:$bcc\n" );

Brauchst du dann nur noch an dein Formular anzupassen.
 
Zuletzt bearbeitet:
hi


hmmm... ich habs jetzt nochmal aber anderst probiert jetzt werden alle daten gesendet aber ich bekomm immer ne fehler meldung

Code:
Warning: Wrong parameter count for mail() in /is/htdocs/31168/www.t-screen.de/formmail/send.php on line 31

<?

$mail="root@t-screen.de";
$vtext="blah \n blah \n MfG ";
$bestaetigung="Mail erfolgreich angkommen $email";

$text=str_replace("\\\"","\"",$text);
$text=str_replace("\'","'",$text);

mail($mail,$betreff,$text,$ip,$host,"From: ".$email); //<---- zeile 31
mail($email,$bestaetigung,$vtext,"From: ".$mail);
?>


die bestaedigungsmail wird abgesendet
die nachricht wo eigendlich an root@t-screen.de kommen soll kommt nicht help me
 
Zuletzt bearbeitet:
das kann so nicht gehen, du hast die angaben
empfänger, betreff, nachricht, headers und zB noch von wem.

was soll $ip und $host ?
wenn das mit in die nachricht gehört, schreibe es so:
PHP:
mail($mail,$betreff,"$text,$ip,$host","From: ".$email);

auch bei from, bin ich mir nicht sicher ob es so geht, mach halt einfach "from: $email" oder "From: $name<$email>" (schöner) :)
 
hi

also ich hab das ganze in mit host und ip im formular gemacht
PHP:
<form ACTION="send.php" METHOD="GET" name="form1" onSubmit="return check()">

<TABLE border=1 cellpadding=3 cellspacing=0 bgcolor="#000000"><TD>
<TABLE border=1 cellpadding=5 cellspacing=0 width=100% bgcolor="#000000"><TD>

 Deine E-Mail Adresse:<BR><input type="text" size="24" maxlength="100" name="email"><BR>
 Deine IP:<BR><INPUT  NAME="ip" VALUE="<? echo $REMOTE_ADDR; ?>"readonly><BR>
 Dein Host:<Br><INPUT NAME="host" Value="<? echo $REMOTE_HOST; ?>"readonly><BR>
</TD></TABLE><BR>
<TABLE border=1 cellpadding=5 cellspacing=0 width=100% bgcolor="#000000"><TD>

Betreff:<BR><input type="text" size="24" maxlength="1000" name="betreff">

</TD></TABLE><BR>
<TABLE border=1 cellpadding=5 cellspacing=0 width=100% bgcolor="#000000"><TD>

Text:<BR><textarea name="text" rows="10" cols="50" WRAP="VIRTUAL"></TEXTAREA>

</TD></TABLE><BR>
<TABLE border=1 cellpadding=5 cellspacing=0 width=100% bgcolor="#000000"><TD align=center>

<INPUT TYPE="submit" VALUE="Abschicken">

</TD></TABLE>
</TD></TABLE>

</form>

</CENTER></BODY></HTML>


dein tip hat leider auch nicht geholfe :(


cya

wolf
 
Zurück