ppmk22
Goto Top

mail funktion geht nicht mit gmx

Hallo Forum

Ich stehe vor einem Rätsel. Hier erstmal mein Code:

<?php
 $mailTo = "mailTo@gmx.de";  
 
 $mailBetrff = "mailBetrff";  
 $mailNachricht = "mail Nachricht";  
 $mailAbsender = "mail@domian.de";  

 $emailVersand = mail($mailTo, $mailBetrff, $mailNachricht, "From:" . $mailAbsender);  

 if ($emailVersand)
 {
     echo "email wurde versand";  
 }else{
     echo "email konnte nicht versand werden";  
 }
?>

Eigentlich funz das. Nur wenn der Empfänger bei gmx ist ist nicht.
Ich bekomme zwar die Meldung, das die Mail versand wurde, aber es kommt nichts an.
Ob das bei anderen Providern jetzt auch nicht geht kann ich nicht sagen.
Ich habe nun ein paar ausprobiert und GMX war der einzigste bei dem es nicht ging.

Woran liegt das und wie kann man das abstellen?

LG
P

Content-ID: 124524

Url: https://administrator.de/contentid/124524

Ausgedruckt am: 22.11.2024 um 14:11 Uhr

maretz
maretz 09.09.2009 um 09:23:16 Uhr
Goto Top
Mal bei GMX den Spam-Ordner überprüft? Läuft dein Script auf nem Webserver mit dynamischer IP?
ppmk22
ppmk22 09.09.2009 um 09:32:14 Uhr
Goto Top
Ja, hab ich mal nachgesehen, im Spam ist auch nichts drin.
Und die IP ist fest.
nxclass
nxclass 09.09.2009 um 11:36:24 Uhr
Goto Top
Ggf. prüft GMX die Domain des E-Mail Absenders - wenn diese nicht existiert wird dann die E-Mail sofort gelöscht.

Einen richtigen Email / SMTP Server hast Du nicht - über die man die E-Mails jagen könnte ?
Driver401
Driver401 09.09.2009 um 14:27:26 Uhr
Goto Top
Zitat von @nxclass:
Ggf. prüft GMX die Domain des E-Mail Absenders - wenn diese nicht
existiert wird dann die E-Mail sofort gelöscht.

Nicht nur das, sondern GMX prüft auch, ob ein Relay genutzt wurde, bzw. die Absendedomain mit dem Absendemailserver übereinstimmt.
ppmk22
ppmk22 09.09.2009 um 15:11:02 Uhr
Goto Top
Also so sieht es aus:

Die Seite läuft auf www.meine-domein.de und der Absender ist info@meine-domein.de.
Ich habe da auch pop/smtp, über die ich email sende und empfange. Ich muss aber erst
einmal smtp machen bevor ich senden kann. Nun wüste ich aber nicht wie das mit php anstellen sollte.
nxclass
nxclass 09.09.2009 um 20:03:59 Uhr
Goto Top
http://email.about.com/od/emailprogrammingtips/qt/et073006.htm
... das hab ich mal gegoogelt

oder Du benutzt gleich den 'phpmailer' - http://phpmailer.worxware.com/
ppmk22
ppmk22 09.09.2009 um 20:17:56 Uhr
Goto Top
Ja genau, über den phpmailer bin ich heute auch gestolpert.
Daran beiße ich mir gerade die Zähne aus.
Der will einfach die Mails nicht versenden.
so sieht mein code bis jetzt aus

 <?php

// example on using PHPMailer with GMAIL

include("class.phpmailer.php");  
include("class.pop3.php");  
include("class.smtp.php"); // note, this is optional - gets called from main class if not already loaded  

$user = "info@domain.de";  
$pass = "passwort";  
$smtpServer = "smtp.domain.de";  
$popServer = "pop.domain.de";  
$absender = "info@domain.de";  
$absenderKlartext = "Fritz Lakritz";  

$mailTo = "emailAn@gmx.de";  
$mailToKlartext = "Sahne Schnecke";  


$mail             = new PHPMailer();

$body             = $mail->getFile('contents.html');  
$body             = eregi_replace("[\]",'',$body);  

$mail->IsSMTP();
$mail->do_debug = 1;
$mail->SMTPAuth   = true;       // enable SMTP authentication
$mail->SMTPSecure = "ssl";      // sets the prefix to the servier  
$mail->Host       = $smtpServer;  // sets GMAIL as the SMTP server
$mail->Port       = 587;        // set the SMTP port

$mail->Username   = $user;      // GMAIL username
$mail->Password   = $pass;      // GMAIL password

$mail->From       = $absender;
$mail->FromName   = $absenderKlartext;
$mail->Subject    = "This is the subject";  
$mail->AltBody    = "This is the body when user views in plain text format"; //Text Body  
$mail->WordWrap   = 50; // set word wrap

$mail->MsgHTML($body);

$mail->AddAddress($mailTo, $mailToKlartext);

$mail->IsHTML(true); // send as HTML

$pop = new POP3();
if ($pop->Authorise($popServer, 110, 30, $user, $pass, 1) == true)
{
    echo "<br> pop vor smpt haut hin <br>";  
    if(!$mail->Send())
    {
      echo "Mail Error: " . $mail->ErrorInfo;  
    } 
    else
    {
      echo "nachricht versendet";  
    }
}
else
{
    echo "pop vor smtp schlug fehl";  
}
?>

Hast Du noch eine Idee?


das pop geht, nur das versenden nicht
Supermax
Supermax 09.09.2009 um 20:55:07 Uhr
Goto Top
Die Einstellungen beziehen sich wohl speziell auf Google Mail, überprüfe mal ob dein Mailserver überhaupt SSL bzw. Verbindungen auf Port 587 unterstützt, der Standard-Port für nicht-verschlüsseltes SMTP ist 25.
ppmk22
ppmk22 10.09.2009 um 06:54:48 Uhr
Goto Top
Der Port ist 100% richtig, das steht bei dem Provider auf der Internetseite so und ich habe auch schon mit dem Support telefoniert.
Ob es nun mit oder ohne SSL sein muss weiß ich nicht, hatte ich aber schon beides probiert.
maretz
maretz 10.09.2009 um 08:26:47 Uhr
Goto Top
hast du denn nen konsolen (ssh/telnet)-login auf dem server? Dann würde ich mal GMX per Telnet ansprechen und gucken was passiert wenn du die Mail direkt versendest...

Und: Nehme halt Port 25 für unverschlüsselte Mails (d.h. kein SSL) -> oder lade dir das GMX-Zertifikat und freu dich auf 100 Jahre Programmierhölle bei der Zertifikatsverwaltung...
ppmk22
ppmk22 11.09.2009 um 22:04:54 Uhr
Goto Top
So da bin ich mal wieder. telnet hab ich nicht und kann ich auch nicht. Das mit den Zertifikat ist wohl auch nicht das richtige. Nun hab ich das ganze mal t-online versucht.

So sieht der Code Schnippsel aus:

 
    $mail->IsSMTP(); 
    $mail->Host = "smtprelay.t-online.de";   
    $mail->do_debug = 3;
    $mail->SMTPDebug = true;
    $mail->SMTPAuth = true;     
    $mail->Username = "Mail@t-online.de";    
    $mail->Password = "passwort";   
    $mail->From = "Mail@t-online.de";  

Und das ist die Fehler Meldung:

SMTP -> get_lines(): $data was "" SMTP -> get_lines(): $str is "421 Identification failed (1). " SMTP -> get_lines(): $data is "421 Identification failed (1). " SMTP -> FROM SERVER: 421 Identification failed (1). SMTP -> FROM SERVER: SMTP -> ERROR: EHLO not accepted from server: SMTP -> FROM SERVER: SMTP -> ERROR: HELO not accepted from server: SMTP -> ERROR: AUTH not accepted from server: SMTP -> NOTICE: EOF caught while checking if connectedMailer Error: SMTP Error: Could not connect to SMTP host.

Ich habe alles mögliche ausprobiert, zu guter letzt in Outlook das Konto mit den Daten aus dem Skript per Copy & Paste eingefügt und geht.

Hat Ihr noch eine Idee????
81825
81825 11.09.2009 um 22:16:34 Uhr
Goto Top
Nee, steht alles da: 421 identification failed
Was verstehst du daran nicht?

http://service.t-online.de/smtp-email-versand-im-email-paket/id_1271377 ...
ppmk22
ppmk22 25.09.2009 um 16:11:17 Uhr
Goto Top
Mein eigentliches Problem hat sich geklärt.
War ein Provider Problem

Vielen Dank an alle