Mailversand per PHP

Jeronnymoe

Mitglied
Hallo,

und zwar hab ich vor, per PHP eine E-Mail zu versenden. Der Code steht
soweit auch schon, nur ich bekomme andauernd folgende Fehlermeldung:

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in ...\check_data_in_de.php on line 132

Ich lasse das ganze über den xampp Apache laufen, falls das noch von Bedeutung ist.

Kann mir da jemand mit den Einstellungen helfen?

Gruß, Jeronnymoe
 
hmm...
Blöde Frage:

Aber hast du überhaupt einen Mailserver am laufen, über den die Mail verschickt werden kann?
Der ist bei XAMPP ja nicht mit dabei ^^
 
Jo, sorry... mein Fehler. Ein Mailserver läuft. Ich hab allerdings keine
Ahnung davon.

Wir arbeiten hier in der Firma mit Novell GroupWise, weiß nicht ob dir
das jetzt weiterhilft.
 
QUOTE Failed to connect to mailserver at "localhost" port 25


Konntest du über dein (lokales) System schon jemals Mails versenden? Läuft auf der Kiste ein SMTP-Dienst?

Bei Unsicherheit: Mach mal einen Portscan, oder einen Test z.B. mit Outlook..
 
Ja, aber halt nur über einen Client. Das dazugehörige System
selber läuft auf einem eigenen Server.
Ich hab absolut keine Ahnung wie ich das jetzt zum laufen bringen
soll.
sad.gif




 
hmmm.... wilst Du nun über Xampp versenden? Keine Ahnung wie das bei Novell GroupWise läuft...

aber wenn Du Xampp verwendest:

Die gleiche Meldung erscheint auch bei mir - wenn Mercury nicht gestartet ist
tongue.gif


Öffne mal das Control Panel von XAMPP (Start > Programme > apachefriends > CONTROL XAMPP SERVER PANEL) und starte Mercury. Der wird nicht automatisch gestartet, kann auch nicht als Dienst eingerichtet werden. Versuch's nochmals und Du wirst zu 90% die Meldung erhalten CODE SMTP server response: 553 We do not relay non-local mail


Dann musst Du Mercury noch richtig konfigurieren (besonders MercuryC Modul). Dafür findest Du hier eine sehr gute Anleitung.
 
Also ich hab jetzt dieses Mercury soweit wie es mir möglich war konfiguriert, aber
es läuft immer noch nicht so wie ich es haben will.
Gibt es nicht eine einfachere Methode Mails aus PHP zu versenden?
 
du musst in der Datei wo die verbindung zum Mailserver hergestellt wird noch einen gültigen Benutzernamen und Passwort für den Zugang zu Mercury eintragen.
 
Ich habe nach stundenlangem googlen eine Alternative gefunden, mit der ich wahrscheinlich über
unseren schon bestehenden SMTP-Server mailen kann:

CODE require("class.phpmailer.php");

$mail = new PHPMailer();

$mail->IsSMTP(); // send via SMTP
$mail->Host = "..."; // SMTP servers
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "..."; // SMTP username
$mail->Password = "..."; // SMTP password

$mail->From = "...";
$mail->FromName = "Mailer";
$mail->AddAddress("...","...");
$mail->AddAddress(""); // optional name
$mail->AddReplyTo("...","...");

$mail->WordWrap = 50; // set word wrap
$mail->AddAttachment("/var/tmp/file.tar.gz"); // attachment
$mail->AddAttachment("/tmp/image.jpg", "new.jpg");
$mail->IsHTML(true); // send as HTML

$mail->Subject = "Here is the subject";
$mail->Body = "This is the <b>HTML body</b>";
$mail->AltBody = "This is the text-only body";

if(!$mail->Send())
{
echo "Message was not sent <p>";
echo "Mailer Error: " . $mail->ErrorInfo;
exit;
}

echo "Message has been sent";


Allerdings kommt jetzt folgende Meldung:

Warning: fsockopen() [function.fsockopen]: unable to connect to ...:25 (Ein Verbindungsversuch ist fehlgeschlagen, da die Gegenstelle nach einer bestimmten Zeitspanne nicht ordnungsgemäß reagiert hat, oder die hergestellte Verbindung war fehlerhaft, da der verbundene Host nicht reagiert hat. ) in ...\class.smtp.php on line 105
Message was not sent
Mailer Error: SMTP Error: Could not connect to SMTP host.

 
Du musst in C:\Programme\xampp\sendmail

die Datei Sendmail (Konfigurationsdatei) mit dem Editor öffnen.

Dies ist meine Conf datei...
QUOTE
; configuration for fake sendmail

[sendmail]

; you must change mail.mydomain.com to your smtp server

smtp_server=localhost

; the default domain for this server will be read from the registry
; this will be appended to email addresses when one isn't provided
; if you want to override the value in the registry, uncomment and modify

;default_domain=local

; log smtp errors to error.log (defaults to same directory as sendmail.exe)
; uncomment to enable logging

error_logfile=error.log

; create debug log as debug.log (defaults to same directory as sendmail.exe)
; uncomment to enable debugging

debug_logfile=debug.log

; if your smtp server requires authentication, modify the following two lines

auth_username=bot@provider.com
auth_password=kasdfuiSADK

; if your smtp server uses pop3 before smtp authentication, modify the
; following three lines

;pop3_server=
;pop3_username=
;pop3_password=

; to force the sender to always be the following email address, uncomment and
; populate with a valid email address. this will only affect the "MAIL FROM"
; command, it won't modify the "From: " header of the message content

force_sender=bot@provider.com

; sendmail will use your hostname and your default_domain in the ehlo/helo
; smtp greeting. you can manually set the ehlo/helo name if required

;hostname=localhost


 
Ich raff' irgend wie gar nichts mehr
biggrin.gif
Ich hab jetzt xampp komplett
deinstalliert und noch mal neu installiert, weil ich mir nicht sicher war,
ob ich vielleicht schon was wichtiges unbewusst zerschossen habe.

Folgender Code wird von mir benutzt:

CODE $empfaenger = "alex...";
$sender = "Alex ...";
$sendermail = "alex...";
$betreff = "Test!";
$text = "Yeah, es klappt!";
mail($empfaenger, $betreff, $text, "From: $sender <$sendermail>");


Und erzeugt folgenden Fehler:

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in D:\Programme\xampp\htdocs\alex\check_data_in_de.php on line 129

Ich möchte auf dem Rechner keinen eigenen Mailserver einrichten, sondern
einen vorhandenen SMTP nutzen. Kann mir jemand vielleicht Schritt für Schritt
sagen was man da tun muss?
 
Ich hab doch noch eine ziemlich gute Anleitung für den PHP Mailer gefunden.
http://iphosting.ch/index.php?content=schnipsel&id=32

Hab alle Daten richtig eingegeben, trotzdem wieder folgende Meldung:

Warning: fsockopen() [function.fsockopen]: unable to connect to ip:port (Ein Verbindungsversuch ist fehlgeschlagen, da die Gegenstelle nach einer bestimmten Zeitspanne nicht ordnungsgemäß reagiert hat, oder die hergestellte Verbindung war fehlerhaft, da der verbundene Host nicht reagiert hat. ) in Pfad\class.smtp.php on line 105
Mist, da hat was nicht funktioniert!
Mailer Error: SMTP Error: Could not connect to SMTP host.
 
Zurück
Oben