cyberscout: Funktion mail()

Hallo
PHP bietet zum Mailversand die Funktion mail() an. Doch diese hat einen Nachteil: ich kann die Absenderdaten bei vielen Webhoster nicht ändern und erhalte jetzt im meinem Fall Mail mit Absender "nobody".

Gibt es Möglichkeiten, diese Daten ausserhalb der php.ini zu ändern, oder gibt es weiter Mail-Möglichkeiten?

HTML-Skript mit CGI Formmailer geht nicht, da der Mailvorgang nicht durch einen User ausgelöst wird.

Gruss
cyberscout

  1. Hi,

    wie sieht denn dein mail() genauer aus?

    Turtle

    1. Hi,

      wie sieht denn dein mail() genauer aus?

      Turtle

      Hallo
      Bis jetzt so: (*trommelwirbel*)

      <?php
      $subject = "Testmail";
      $msg     = "Hallo";
      $mailsend = mail("felix.albrecht@gmx.ch","$subject","$msg");

      if($mailsend) {
       echo "Mail verschickt";
       }
      ?>

      Nun ja, nicht der Hammer. Ich schaue jetzt grad die offizielle Doku unter php.net an. Da steht ja einiges darüber.
      Vielen Dank für eure Antworten.
      cyberscout

      1. Moin cyberscout,

        ich verweise mal auf eine Include Funktion, welche es auch
        ermöglicht Attachments ( Anhänge ) mit zu schicken.

        In der Hauptroutine wird folgendes definiert:

        $Sender=""Mein angezeigter Name" <meine_adresse@hoster.de>";
        $Subject='Mein Betreff';
        $time=date('d/m/Y - H:i:s');
        $Mail_Text=sprintf("Gesendet am: %s\r\n\r\n%s",$time,$Mail_Text);

        Der Funktionsaufruf:

        SendMail('empfänger@hoster.de', $Sender, $Subject, $Mail_Text);

        Die Routine muß mit include eingebunden werden:
        include("send_mail.php");

        In Zeile 5 von send_mail.php muß noch deine Addy eingetragen werden:
        $Answer_Reply='deine.adresse.@web.de';

        Die Routine kann hier gezogen werden:
        http://geli.dnip.net/send_mail.zip

        Gruß
        Mike

        --
        Murphy: "Wenn etwas schiefgehen kann, dann wird es auch schiefgehen."
  2. Moin,

    PHP bietet zum Mailversand die Funktion mail() an. Doch diese hat einen Nachteil: ich kann die Absenderdaten bei vielen Webhoster nicht ändern und erhalte jetzt im meinem Fall Mail mit Absender "nobody".

    Naja nobody ist doch cool oder?

    Gibt es Möglichkeiten, diese Daten ausserhalb der php.ini zu ändern, oder gibt es weiter Mail-Möglichkeiten?

    ja gibt es z.Bsp mit iniset ()

    HTML-Skript mit CGI Formmailer geht nicht, da der Mailvorgang nicht durch einen User ausgelöst wird.

    Ach was.. ich behaupte das Gegenteil.

    Naja Du kennst Die mail () Funktion nicht richtig.
    Schau Dir mal das an:
    http://www.php.net/manual/de/function.mail.php insbesondere die Sache mit dem zusätzlichen Headern da gibs dann auch ne From Angabe.
    Welche Tutorials benutzt Du eigentlich?
    Das dürfte eigentlich in jedem besseren Tutorial beschrieben sein.

    TomIRL

  3. Hello,

    PHP bietet zum Mailversand die Funktion mail() an. Doch diese hat einen Nachteil: ich kann die Absenderdaten bei vielen Webhoster nicht ändern und erhalte jetzt im meinem Fall Mail mit Absender "nobody".

    Gibt es Möglichkeiten, diese Daten ausserhalb der php.ini zu ändern, oder gibt es weiter Mail-Möglichkeiten?

    Ja. Mail() ist nur eine Rumpffunktion bzw Hüllfunktion. es gibt auch eingie Erwwiterungen dazu, die dann wohl in PHP5 sofort integriert sein werden.

    Man kann mail() übder den Paramter "header" alles machen lassen, was ein üblicher Mail-Client auch kann. Allerdings sollte man das erst tun, wenn man die divrsen Sicherheitslücken kennt, die der MTA hat.

    ########################################################################################
        Man sollte keinerlei header aus einem Formular direkt ind die Mail()-Funktion übernehmen.
        ########################################################################################

    Harzliche Grüße aus http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau