[php]smtp.class.php

WBOY
リリース: 2016-06-23 14:36:55
オリジナル
2224 人が閲覧しました

set_time_limit(120);
class smtp_mail
var $host; // 認証パスワード
var $debug = false;
var $conn;
var $result_str; // クライアントによって送信されたコマンド
var $from_r; // メール形式 0; =通常のテキスト 1=html メール
function smtp_mail($host,$port,$user,$pass,$debug=false)
{
$this->host = $host
$this->port = $;ポート;
$this->user = Base64_encode($user);
$this->debug = $debug; (AF_INET, SOCK_STREAM, SOL_TCP); //具体的な使い方はマニュアルを参照してください
if($this->socket)
{
$this->result_str = "Create SOCKET:".socket_strerror(socket_last_error()) ;
$this->debug_show($this->result_str);
else
{
exit("初期化に失敗しました。ネットワーク接続とパラメータを確認してください") }
$this->conn = socket_connect($this->socket,$this->host,$this->port);
if($this->conn )
{
$this->result_str = "SOCKET 接続の作成:" .socket_strerror(socket_last_error());
$this->debug_show($this->result_str)
}
else
{
exit( "初期化に失敗しました。ネットワーク接続とパラメータを確認してください"); $this->result_str = "サーバー応答: ".socket_read ($this->socket, 1024) .""
$this->debug_show($ this->result_str);


}

function debug_show($str)
{
if($this->debug)
{
echo $str."

rn"
}
}

function send($from,$to,$subject,$body)
{
if($from == "" || $to == "")
{
exit("メールアドレスを入力してください") ; if($ shumper == ")$" untitled "")$ body "
if($this->mailformat==1) $All.= "Content-Type: text/html;rn";
else $All .= "Content-Type: text/plain ;rn"; .= "charset=gb2312rnrn";
$All .= $body;
/*
$All の内容を加工すれば、MIME メールを送信できます
ただし、まだ多くのプログラムを追加する必要があります
*/


// 以下はサーバーとのセッションです
$this->in = "EHLO HELOrn";

$this->in = "AUTH LOGINrn" ; ->docommand();
$this->in = $this->user."rn";
$this->in = $this-> ;pass."rn";
$this->docommand();

if(!eregi("235",$this->result_str){
$this->result_str = " smtp 認証に失敗しました" ;
$this->debug_show($this->result_str);
0 を返す }
$this->in = ".$from."
$this-> ;docommand();$this->in = "RCPT TO:".$to."rn";
$this->docommand();

$this->in = "DATArn";
$this->docommand();

$this->in = $All."rn.rn";
$this->docommand();

if(!eregi("250",$this->result_str)){
$this->result_str = "邮件発行失败";
$this->debug_show($this->result_str);
0 を返します。
}

$this->in = "終了";
$this->docommand();

//结完了,关闭连接
return 1;
}

function docommand()
{
socket_write ($this->socket, $this->in, strlen ($this->in));
$this->debug_show("客户机コマンド:".$this->in);
$this->result_str = "服务器应答:".socket_read ($this->socket, 1024)."";
$this->debug_show($this->result_str);
}

} //クラスを終了
?>


先取文件内上面程序里のこれらのコンテンツを参照してください。
var $ host="smtp.sina.com.cn"; // 主机
var $port="25"; //ポート一般は 25
var $user=" users"; //SMTP 認証の帐号
var $pass="users123; //認証秘密コード

その後、このファイルを你网站下に放って、只要你网站の程序访问的到就行,.
その後、公開ファイルの手順に使用します里包含来例: include('smtp.class.php');
その後この発行邮件の程序里用
$mails=new smtp_mail()
if($mail->send("発行信人地址") ,"收信人邮箱地址","主题","内容")){
echo "発行送成功!"
}else{
echo "邮件服务器忙,请稍候再试试";

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート