PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PHP: mail() und SMTP authentification?


mf_2
2005-01-03, 06:29:48
Hallo,
Ich will von meinem server mit mail() ne mail verschicken unter php. ich bekommm aber vom mailserver den fehler #530 ( smtp auth required ). wie kann ich mich denn fuer den smtp server authentifizieren ueber php?
ich habs mal so versucht, das ist aber imap:

$test = imap_open("{127.0.0.1:143/notls}", $user, $pw);

dann hab ich mla den smtp port 235 versucht, bekomm aber nen timeout:

$test = imap_open("{127.0.0.1:25/notls}", $user, $pw);

wisst ihr, wie ich mich fuer den smtp server authentifizieren kann?
der webserver is aufm gleichen rechner wie der mailserver, wie man wahrscheinlich schon ausm imap_open kommando rauslesen kann *g

Danke fuer eure Hilefe und Zeit,

mf_2

ravage
2005-01-03, 11:53:41
Du musst den SMTP Server, Port etc in deiner php.ini eintragen. Das kannst du auch per ini_set() über dein Script:

http://de.php.net/manual/de/ref.mail.php

mf_2
2005-01-04, 00:37:43
das smtp zeug steht da schon drin, geht aber trotzdem ned...

XPiRE
2005-01-16, 12:26:00
Also, ich bin schonma sicher, dass imap und pop3 zwei verschiedene Protokolle sind...

und ne smtp authentification läuft so, dass du dich mit pop3acc zum download anmeldest, und dann per smtp die maildaten sendest (während du quasi noch zum maildownload angemeldet bist...

*such*

der code hier klappt ab php 4.x irgendwas bla... :)

<?php
/* mehrere Empfänger werden mit komma abgetrennt */
$to = "Mary <mary@example.com>" . ", " ; // beachten Sie das Komma
$to .= "Kelly <kelly@example.com>";

/* Betreff */
$subject = "Betreffend";

/* Nachricht */
$message = '
jo hier is die nachricht
';

/* Um eine HTML-Mail zu senden, kannst du den "Content-type"-Header.
setzen */
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

/* zusätzliche Header lustigerweise brauchst keinen existierenden emailacc*/
$headers .= "From: basti <tester@nowhere.org>\r\n";


$headers .= "Cc: weranders@nowhere.org\r\n";
$headers .= "Bcc: nochweranders@nowhere.org\r\n";

/* Verschicken der Mail */
mail($to, $subject, $message, $headers);
/* nix mit imap... das hier benutzt die internen sendmail funktionen*/
?>

Hoffe des hilft....

Greetz, Basti :biggrin:

XPiRE
2005-01-16, 12:38:06
*ups* nochma nachgelesen...

wirst wohl net drumrumkommen selbst pop3 mit deinem mailserver zu sprechen...

besorg dir einfach ne protokollerklärung... is irgendwas in der form

<--- Socket verbindung
+pop3 mailserver ready (sagt er)
user:blaaaaaaa@blaaaaaaaaaaaa.bla (sagst du)
+300(?) OK need password (sagt er)
pass:blaaaaaaaaaaaa (sagst du)
+300 OK ready for maildownload
----->

an dieser stelle verbindung trennen (du bist authenti... ich hasse dieses wort)
und smtp mit dem dingen sprechen...)

die fsockfunktionen von php machen den rest... *g*

hoffe das hilft nu aber :rolleyes: