E-mail an lokalen smtp microsoft server senden per php5
Jonny F.
- php
Hallo,
ich komm nicht weiter, die php5 ini habe ich so konfiguriert
[mail function]
; For Win32 only.
SMTP = srv-exchange01
smtp_port = 25
; For Win32 only.
;sendmail_from = edv-example@example.com
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path =
; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =
<?php
error_reporting(E_ALL);
$empfaenger = "edv-example@example.de"; //Mailadresse
$absender = "edv-example@example.de";
$betreff = "PHP-Mail-Test";
$mailtext = "Inhalt einer Mail zum Test von PHP";
$antwortan = "edv-example@example.de";
mail( $empfaenger,
$betreff,
$mailtext,
"From: $absender\nReply-To: $antwortan");
echo "Mail wurde gesendet!";
?>
hier noch mein Mail Script
Tach,
hier noch mein Mail Script
und wie lautet die Fehlermeldung?
mfg
Woodfighter
Tach,
hier noch mein Mail Script
und wie lautet die Fehlermeldung?
mfg
Woodfighter
Das ist ja das merkwürdige, es passiert einfach nichts, keine Fehlermeldung keine E-Mail
gibt es noch andere möglichkeiten den Vorgang zu überprüfen, muss man vielleicht noch den smtp server spezielle einstellen.
Hi!
Das ist ja das merkwürdige, es passiert einfach nichts, keine Fehlermeldung keine E-Mail
Du wertest den Rückgabewert von mail() nicht aus. Solltest du aber tun, wenn du Fehler suchst. Lass ihn dir mit vardump() anzeigen.
Die geänderten Einstellungen sind auch aktiv? Das kannst du mit phpinfo() prüfen.
gibt es noch andere möglichkeiten den Vorgang zu überprüfen, muss man vielleicht noch den smtp server spezielle einstellen.
Mit PHP allein kommst du da sicher nicht weiter. Da kann das Netzwerk oder der SMTP-Server auch noch blocken. Logfiles des SMTP-Servers wären die nächste Anlaufstelle.
Lo!
SMTP localhost localhost
Das ist der PHP info eintrag über smtp, aber warum zeigt er mir nicht das eingegebene an, ich blick net durch.
Bei mir ist die ini Datei bei etc/php5/appache2 drine, aber bei php5 gibt es noch einen ordner namens cli da gibt es auch eine ini datei muss ich diese auch abändern oder ist die egal.
Hi!
Das ist der PHP info eintrag über smtp, aber warum zeigt er mir nicht das eingegebene an, ich blick net durch.
Bei mir ist die ini Datei bei etc/php5/appache2 drine, aber bei php5 gibt es noch einen ordner namens cli da gibt es auch eine ini datei muss ich diese auch abändern oder ist die egal.
phpinfo() zeigt dir im ersten Block auch an, welche ini-Datei(en) es ausgewertet hat. Natürlich musst du phpinfo() auch aus einer vergleichbaren Umgebung starten (bei CLI-Problemen hilft beispielsweise eine Webserver-phpinfo() wenig), am besten also aus dem betroffenen Script mit der mail()-Funktion.
Lo!
Hi!
Nachtrag:
Achja, und bereits laufende Dienste zeigen sich meist unbeeindruckt von Konfigurationsänderungen, wenn sie nicht neu gestartet werden.
Lo!
Loaded Configuration File /etc/php5/apache2/php.ini
[mail function]
; For Win32 only.
SMTP = srv-exchange01
smtp_port = 25
; For Win32 only.
;sendmail_from = edv-praktikant@Josera.com
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path =
; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =
Und das ist nochmal der Ausschnitt der drinne steht, kann mir jetzt mal vielleicht jemand sagen warum dann das dabei raus komm
phpinfo();
SMTP localhost localhost
smtp_port 25 25
Die angaben habe ich alle aus dem Script mit der ich die Email schreiben will.
Gruß Jonny F.
Hi!
Loaded Configuration File /etc/php5/apache2/php.ini
Aus der Pfandangabe entnehme ich, dass du den Apachen mit dem PHP auf einer Linux/Unix-Maschine laufen hast. In dem Fall gelten die Konfigurationseinstellungen für Unix. Mir ist nicht bekannt, dass PHP dann was anderes als sendmail (oder ein leichter zu konfigurierendes Derivat) zum Mail-Versand verwendet. Du müsstest etwas sendmail-isches installieren, das du so konfigurierst, dass es die Post an den Windows-SMTP-Server weiterreicht.
Und das ist nochmal der Ausschnitt der drinne steht, kann mir jetzt mal vielleicht jemand sagen warum dann das dabei raus komm
phpinfo();
SMTP localhost localhost
smtp_port 25 25
Apache restarten oder zumindest reloaden sollte wenigstens die gänderten Werte übernehmen, auch wenn dir die Windows-Werte nichts nützen werden.
Lo!
Und das ist nochmal der Ausschnitt der drinne steht, kann mir jetzt mal vielleicht jemand sagen warum dann das dabei raus komm
phpinfo();
SMTP localhost localhost
smtp_port 25 25
Änderungen wurden übernommen, hab en neustart gemacht.
Ja der Apache ist auf einer Unixkiste mit Samba ect.
hätte ich vielleicht vorher schon posten sollen sry.
das heißt im Klartext ich brauche irgendein Mail Programm für die Unixkiste damit er die Emails an den SMTP Server von Microsoft schickt, aber irgendwelche vordefinierten funktionen in PHP gibt es dafür nicht oder wie.
Danke jetzt bin ich wenigstens ein ganzes Stück weiter gekommen.
Hi!
das heißt im Klartext ich brauche irgendein Mail Programm für die Unixkiste damit er die Emails an den SMTP Server von Microsoft schickt, aber irgendwelche vordefinierten funktionen in PHP gibt es dafür nicht oder wie.
Erstens ja und zweitens nein, aber wenn dabei auch etwas "in PHP geschriebenes" akzeptierst, so kann ich dich auf PEAR verweisen, da gibt es einen mail()-Ersatz, der auch direkt mit beliebigen SMTP-Servern kommunizieren kann. (Gibt es sicher auch in anderen Frameworks oder irgendwo als Stand-Alone-Variante.)
Lo!
Hi!
das heißt im Klartext ich brauche irgendein Mail Programm für die Unixkiste damit er die Emails an den SMTP Server von Microsoft schickt, aber irgendwelche vordefinierten funktionen in PHP gibt es dafür nicht oder wie.
Erstens ja und zweitens nein, aber wenn dabei auch etwas "in PHP geschriebenes" akzeptierst, so kann ich dich auf PEAR verweisen, da gibt es einen mail()-Ersatz, der auch direkt mit beliebigen SMTP-Servern kommunizieren kann. (Gibt es sicher auch in anderen Frameworks oder irgendwo als Stand-Alone-Variante.)
Lo!
Naja, dann weiß ich wenigstens bescheid, danke für deine Hilfe
Gruß Jonny F.
Mahlzeit Jonny F.,
hier noch mein Mail Script
Es fehlt immer noch eine hilfreiche Problembeschreibung, es fehlen immer noch Fehlermeldungen.
MfG,
EKKi
Mahlzeit Jonny F.,
ich komm nicht weiter,
[mail function]
; For Win32 only.
SMTP = srv-exchange01
smtp_port = 25; For Win32 only.
;sendmail_from = edv-example@example.com
Dass Du das auskommentiert gelassen hast, war Absicht?
Es fehlt eine hilfreiche Problembeschreibung, es fehlen Fehlermeldungen.
MfG,
EKKi
Mahlzeit Jonny F.,
ich komm nicht weiter,
[mail function]
; For Win32 only.
SMTP = srv-exchange01
smtp_port = 25; For Win32 only.
;sendmail_from = edv-example@example.comDass Du das auskommentiert gelassen hast, war Absicht?
Wie meinst du das "auskommentiert gelassen hast", was ist auskommentiert.
Ja das Problem bei mir ist halt das ich keinerlei Fehlermeldungen bekomme, wie gesagt ich bekomm genau so viel Fehlermeldungen wie E-Mails :D
Hello,
ich komm nicht weiter, die php5 ini habe ich so konfiguriert
Welcher Mail-Server läuft denn überhaupt auf deinem Windows-Host?
Ist der richtig konfiguriert?
Lässt er sich über einen Standard-Mail-Client (z.B. M$-Outlook-Express) ansprechen?
Erst wenn das alles sichergestellt ist, lohnt es sich, ihn per PHP in Anspruch zu nehmen.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg