Marc: mail()

Hallo liebes Forum

Ich weiss, Fragen zur mail-Funktion werden hier öfters gestellt, nur leider bin ich mit den vorhandenen Beiträgen noch nicht weiter gekommen.
Ich möchte ein Formular an mich senden lassen. vom formular wird folgendes php-file aufgerufen:

<?php
$fmResponse = implode("",file("reply.html"));
$recipient = "ich@meiner-domain.com";

$arr = array($name,$vorname,$firma,$email,$anfrage);
$sep = "-";
$comment = implode($sep,$arr);

foreach($HTTP_POST_VARS as $key=> $val)
  {
    $fmResponse= str_replace("<$key>", $val, $fmResponse);
  }

mail($recipient,$subject,$comment);
echo $fmResponse;
?>

Weshalb kommt hier die Antwortseite schön auf den Schirm, aber nie ein mail bei mir an?

Danke und Gruss von Marc

  1. Hallo,

    mail($recipient,$subject,$comment);
    echo $fmResponse;

    Ist ein Mailserver (SMTP) verfuegbar? Ansonsten einfach pruefen, ob mail() 1 zurueck gibt:

    $test=mail($recipient,$subject,$comment);
    if($test==1)
    {
      echo $fmResponse;
    }
    else
    {
      echo "Mail konnte nicht gesendet werden / es ist ein Fehler aufgetreten.\n";
    }

    MfG, Thomas

    1. Danke Thomas

      Ich bekomm diese Meldung:

      Mail konnte nicht gesendet werden / es ist ein Fehler aufgetreten.

      somit also kein Mailserver verfügbar...
      Sollte dies der Provider nicht grundsätzlich unterstützen?

      Wie soll ich nun fortfahren?
      Wenn ich es lokal ausprobieren möchte, was genau muss ich im php.ini file angeben?

      Danke nochmal...
      Marc

      1. Hallo,

        Wenn ich es lokal ausprobieren möchte, was genau muss ich im php.ini file angeben?

        Siehe </?m=75654&t=13635>.

        MfG, Thomas

        1. Hallo

          Siehe </?m=75654&t=13635>.

          Das kommt mir bekannt vor :-)

          Nun ja, hab die IP des SMTP eingetragen, und unter sendmail_from meine email-adresse, richtig so?

          leider gehts nicht...
          hast du noch ein tip?

          Thanks

          1. Guten Abend, Marc,

            ich gehe nach Deinen Posts davon aus, dass Du unter Windows arbeitest. Wenn nicht, dann vergiss den Beitrag ;)

            Zuerst prüf mal, ob Du auf den Server überhaupt kommst:
            telnet servername smtp

            Dann im Fenster eingeben:
            MAIL FROM:absender@provider.de
            RCPT TO:empfaenger@provider.de
            DATA
            subject: SMTP Test
            Testnachricht
            .

            Letzte Zeile ist ein Punkt. Bei jeder Zeile schauen, ob eine Antwort vom Server kommt. Nur innerhalb des Mail-Texts kaspert er nicht dazwischen.

            Wenn er Dir irgendwo einen Fehler meldet, hast Du schon bei der Serverwahl einen Fehler. Dann hier mal die Antwort posten.

            In der c:\windows\php.ini sollte folgendes stehen

            [mail function]
            ; For Win32 only.
            ;SMTP = localhost
            SMTP = mailto.t-online.de

            Ich habe übrigens die Erfahrung gemacht, dass Mails über den T-Online über 4 Wochen gebraucht haben. Mit dem gleichen Script über einen anderen Server keine Minute.

            HtH, Thoralf