Autor | Zpráva | ||
---|---|---|---|
Darker Profil |
Servery mi vrací hlášku:
421 Cannot connect to SMTP server 173.194.34.86 (173.194.34.86:25), connect timeout a potom ukončí spojení. Nejdříve jsem myslel, že to souvisí s rychlostí mého připojení (vytáčené a je zataženo), ale na hostingu se skript choval stejně. Na mailservery na localhostu se připojím bez problému: >> 220 HIVE ESMTP HELO localhost >> 250 Hello. MAIL FROM: name@server.cz >> 250 OK RCPT TO: jmareda@127.0.0.1 >> 250 OK DATA >> 354 OK, send. Reply-To: name@server.cz From: name@server.cz Content-Type: multipart/mixed; boundary="PHP-mixed-4ff79c61afac1f2f78c3ef42b8db7614" To: jmareda@127.0.0.1 Subject: SUBJECT --PHP-mixed-4ff79c61afac1f2f78c3ef42b8db7614 Content-Type: multipart/alternative; boundary="alt-PHP-mixed-4ff79c61afac1f2f78c3ef42b8db7614" BLA BLA BLA, formát emailu je v pořádku, v outlooku se mi zobrazil správně. --PHP-mixed-4ff79c61afac1f2f78c3ef42b8db7614-- . Funkce která komunikuje se serverem: public function send() { $communication = array("HELO {$_SERVER["SERVER_NAME"]}", "MAIL FROM: {$this->headers["From"]}", "RCPT TO: {$this->recipient}@{$this->host}","DATA",$this->getHeaders()."\r\n\r\n".$this->getText()."\r\n.");; $con = fsockopen($this->host, 25); if(!$con) return false; ob_end_flush(); for($i=0; $i<count($communication); $i++) { $data = ""; while (!feof($con)&&strpos($data,"\n")===false) { $data.= fgets($con, 128); } echo ">> $data"; echo $communication[$i].PHP_EOL; if(!$con) return false; @ob_flush (); fputs($con,$communication[$i]."\r\n"); } fclose($con); return false;; } Tuší někdo, co se má dělat s emailem, který obsahuje tečku na prázdném řádku? |
||
Časová prodleva: 12 let
|
0