[PHP] Frage zu mail()

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Halloweenracer, 25. September 2008 .

Schlagworte:
  1. 25. September 2008
    Frage zu mail()

    Hallo,

    ich habe hier ein Kontakformular. Das habe ich in HTML und PHP geschrieben. An sich funktioniert das auch. Nur muss ich dazu den Mailserver direkt auf dem Webserver installiert haben, wo das Script läuft. Ich will aber einen anderen Mailserver nutzen (z.B. den von GMX) und dazu muss ich aber User und PW mit in die mail() integrieren.

    Wie mache ich das denn am besten?

    Mfg Halloweenracer


    Hier mal der Code:

    kontakt.php
    PHP:
    < html >
    <
    head >
    <
    title > Kontakt </ title >
    </
    head >
    <
    body >
    <
    table border = "0"  cellpadding = "1"  cellspacing = "2" >
    <
    form action = "senden.php"  method = "post" >
    <
    tr >
      <
    td > Name :</ td >
      <
    td >< input name = "Name"  size = "20"  type = "text" ></ td >
    </
    tr >
    <
    tr >
      <
    td > eMail :</ td >
      <
    td >< input name = "Email"  size = "20"  type = "text" ></ td >
    </
    tr >
    <
    tr >
      <
    td > Betreff :</ td >
      <
    td >< select name = "Betreff"  size = "1" >< option > Hilfe </ option >
    <
    option > Kritik </ option >< option > Werbung </ option ></ select ></ td >
    </
    tr >
    <
    tr >
      <
    td > Nachricht :</ td >
      <
    td >< textarea cols = "25"  name = "Nachricht"  rows = "5" ></ textarea ></ td >
    </
    tr >
    <
    tr >
      <
    td > Spamschutz :</ td >
    </
    tr >
    <
    tr >
      <
    td > 10 + 15 - 5 =</ td >
      <
    td >< input name = "Spam"  size = "20"  type = "text"  ></ td >
    </
    tr >

    <
    tr >
      <
    td align = "center"  colspan = "2" >< input name = "Send"  type = "submit"  value = "Abschicken" >< input name = "Reset"  type = "reset"  value = "Löschen" ></ td >
    </
    tr >
    </
    form >
    </
    table >
    </
    body >
    </
    html
    senden.php
    PHP:
    <html>
    <head>
    <title>Kontakt</title>
    </head>
    <body>
    <?php

    $Empfaenger 
    "foo@bar.com" ;

    if(
    $_REQUEST [ 'Send' ])
    {
       if(empty(
    $_REQUEST [ 'Name' ]) || empty( $_REQUEST [ 'Email' ]) || empty( $_REQUEST [ 'Nachricht' ]))
       {
          echo
    "Bitte gehen Sie <a href=\"javascript:history.back();\">zurück</a> und füllen Sie alle Felder aus!" ;
       }
       else
       
       
    $Spam = $_REQUEST [ 'Spam' ];
       
       if(
    $Spam  ==  '20' )
        {
          
    $Mailnachricht  "Sie haben folgende Nachricht erhalten: \n\n" ;
          while(list(
    $Formularfeld $Wert )= each ( $_REQUEST ))
          {
             if(
    $Formularfeld != "Send" )
             {
                
    $Mailnachricht  .=  $Formularfeld . ": " . $Wert . "\n" ;
             }
          }
          
    $Mailnachricht  .=  "\nDatum/Zeit: " ;
          
    $Mailnachricht  .=  date ( "d.m.Y H:i:s" );
          
    $Mailbetreff  "Kontakt: " ;
          
    $Mailbetreff  .=  $_REQUEST [ 'Betreff' ];
          
    mail ( $Empfaenger $Mailbetreff $Mailnachricht "From: " . $_REQUEST [ 'Email' ]);
          echo
    "Vielen Dank für Ihre eMail!" ;
          echo
    "<br><br>" ;
          echo
    "<a href=\"index.php\">Zurück zur Startseite</a>" ;
        } else 
          {
           echo
    "Ein Fehler ist aufgetreten. Bitte gehen Sie auf diese <a href=\"kontakt.php\">Seite</a>." ;
          }
    }
    else
    {
       echo
    "Ein Fehler ist aufgetreten. Bitte gehen Sie auf diese <a href=\"kontakt.php\">Seite</a>." ;
    }

    ?>
    </body>
    </html> 
     
  2. 25. September 2008
    AW: Frage zu mail()

    Soweit ich weis ist die Funktion Mail nicht im stande eine Authentifikation zu nutzen.

    Als Alternative kannst du dir ja mal diese 2 Klassen ansehen die die gewünschten Funktionen liefern =)

    MIME E-mail message sending: PHP mailer to compose and send MIME messages - PHP Classes

    SMTP E-mail sending class: Sends e-mail messages via SMTP protocol - PHP Classes




    \\ alternativ könntest du nur in deinem Webspace in der PHP-Ini den Absender setzen den du haben möchtest ( auch deine gmx Adresse ) diese wird dann beim Empfänger angezeigt.

    Jedoch ist dies bei Shared-Hostern nicht oft machbar.....
     
  3. 25. September 2008
    AW: Frage zu mail()

    hi, bei imap kannst du das hier benutzen PHP: imap_open - Manual [...]

    andernfalls reicht für das reine versenden auch ein normaler socket. port sollte 25 sein.
    hier findest du ne klasse: Mail via SMTP versenden @ PHP - tutorials.de: Tutorial, Forum, Anleitung & Hilfe

    nicht notwendig, da du in der funktion mail() alle header selbser angeben kannst
    ich kann dir garned sagen wie oft ich meinem cheff schon email mit absender "bka" oder "polizei@bezirk.de"
    geschickt hab^^
     
  4. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.