SMTP Fehlermeldung

Knuddel

Grünschnabel
Kann mir vielleicht jemand helfen, was bedeutet diese Fehlermeldung und wie kann ich sie beheben:

Warning: mail(): SMTP server response: 503 Bad sequence of commands (missing RCPT) in D:\Apache - MySQL\minixampp\htdocs\email\index.php on line 44

schreib mal mein Quelltext noch dazu:

PHP:
<html>
<body>

<form action = "index.php" method = "post">
Nickname: <input type = "text" name = "nick"> <br>
Passwort: <input type = "password" name = "pass"> <br>
Email: <input type = "text" name = "mail">    <br>
<input type = "submit" name = "schicken" name = "Abschicken">
</form>

</body>
</html>

<?
$db = mysql_connect();

mysql_select_db("dbBenutzer");

mysql_query("insert into tBenutzer(Nickname, Passwort, Email) values ('$nick', md5('$pass'), '$mail')");

mysql_close($db);

$empfaenger = $mail;
$betreff = "Willkommen auf knuddels-welt";
$text = "Willkommen auf knuddels-welt,
             
             Dein Daten sind:

         ------------------------------------------------------
         Nickname: $nick
         Passwort: $pass
        -------------------------------------------------------

--------------------------------------------------------------------------------------
         Mit freundlichen Grüßen
         Knuddel";

mail($empfaenger, $betreff, $text);
?>
 
Versuch es mal mit den superglobals

$nick --> $_POST['nick']
$pass--> $_POST['pass']
$email--> $POST['email']

Ist der saubere weg und könnte dein Problem vielleicht lösen

ansonsten ist deine testumgebung nicht mit einem mailserver ausgestattet
 
natürlich hab ich ein mailserver "Hamster", aber ich hab festgestellt da die mail geschickt werden, bloß komisch is das am anfang wenn ich das erste mal auf die seite komme immer der fehler da steht... und ich weiss nicht wie so?
 
du mußt das script flaggen wäre ne lösung

->
PHP:
<?
if($_POST['schicken']=="Abschicken"){
$db = mysql_connect();

mysql_select_db("dbBenutzer");

mysql_query("insert into tBenutzer(Nickname, Passwort, Email) values ('$nick', md5('$pass'), '$mail')");

mysql_close($db);

$empfaenger = $mail;
$betreff = "Willkommen auf knuddels-welt";
$text = "Willkommen auf knuddels-welt,
             
             Dein Daten sind:

         ------------------------------------------------------
         Nickname: $nick
         Passwort: $pass
        -------------------------------------------------------

--------------------------------------------------------------------------------------
         Mit freundlichen Grüßen
         Knuddel";

@mail($empfaenger, $betreff, $text);
exit();
}else{
?>
<html>
<body>

<form action = "index.php" method = "post">
Nickname: <input type = "text" name = "nick"> <br>
Passwort: <input type = "password" name = "pass"> <br>
Email: <input type = "text" name = "mail">    <br>
<input type = "submit" name = "schicken" name = "Abschicken">
</form>

</body>
</html>
<?
}
?>

es wird zuerst gecheckt ob das form abgeschickt wurde wenn nicht wird es angezeigt
- das @ unterdrückt errormeldungen
 
Hi!

Ist der Quelltext von dir eine einzige Datei?

Wenn du ein HTML-Formular hast und du die Daten, die eingegeben werden sollen, einlesen willst, musst du das Formular erst abschicken. So wie du es machst, willst du beim ersten Aufruf der Seite direkt nach dem Ausgeben des HTML-Formulars eine Mail verschicken. Zu dem Zeitpunkt sind deine Variablen allerdings noch nicht gefüllt.

Dann noch einen Tipp: Benutze anstatt <? ?> lieber <?php ?> da die ersteren Tags nicht von jeder Konfiguration untersützt werden.

Du arbeitest noch nicht lange mit PHP, oder? Wenn nicht, dann solltest du dir lieber erst ein Buch zulegen und daraus lernen als einfach drauf loszuprogrammieren. Damit kannst du dir unter Umständen falsches Hintergrundwissen aneignen.

Gruß,
matt

[edit] Jup, sowas meinte ich... war bloß zu langsam :) [/edit]
 
Zurück