當前位置:編程學習大全網 - 網站源碼 - php通過 smtp發送郵件問題

php通過 smtp發送郵件問題

程序中:$this->smtp_putcmd("", base64_encode($this->pass)

登陸密碼base64後明文發送,認證方式為未加密方式,163的郵箱支持未加密的認證,其他郵箱就未必了,而且像google郵箱也不接受來自本localhost主機發送的郵件,只接受開放smtp服務的主機發送郵件。

以下這段程序是原來寫的,探測smtp主機的,在$server數組中添加smtp主機就可以了,只有返回AUTH LOGIN PLAIN的才可以用妳說的程序發送郵件:

<?

set_time_limit( 0 );

$server = array(

"smtp.163.com",

"smtp.sina.com",

"smtp.google.com",

);

echo "<pre style='font-size:12px;font-family:verdana'>";

foreach ( $server as $key => $val) {

$fp = fsockopen( $val, 25, $errno, $errstr, 10 );

if ( $errno !==0 ) {

echo("Can not connect to $val .\r\n");

continue;

}

echo "\r\n<font color=red>$val</font> \r\n";

echo fread( $fp, 1024);

fputs( $fp, "EHLO localhost\r\n" );

echo fread( $fp, 1024 );

fclose( $fp );

  • 上一篇:通訊公式第五檔最右邊顯示的數據是什麽意思?
  • 下一篇:300開的qq華夏端遊需要多少寬帶夠用
  • copyright 2024編程學習大全網