php发送邮件
--------------------------------------------------------------------------------
<?php
header("content-type:text/html;charset=utf8");
//$smtp="smtp.exmail.qq.com"; //SMTP邮件发送服务器
$smtp="smtp.163.com"; //SMTP邮件发送服务器
$title="标题"; //邮件标题
$username="****"; //SMTP用户名
$passwd="LIUDANDAN3klk"; //SMTP密码
$mailfrom="*****@163.com"; //发送人
$mailfrom1="****@163.com"; //回复邮件人
$rcptto="*****@163.com"; //收件人
$mail="这是测试邮件地址1111111111111111111111111111111"; //邮件正文
smail($smtp,$title,$username,$passwd,$mailfrom,$mailfrom1,$rcptto,$mail);
function smail($smtp,$title,$username,$passwd,$mailfrom,$mailfrom1,$rcptto,$mail)
{
$message="";
$message .= "正在连接服务器...
";
$link = fsockopen($smtp,25);//socket链接
if($link){
set_socket_blocking($link,true);//
$lastmessage=fgets($link,1024);//返回数据说明此时已经链接上qq smtp服务器
$message .= "与服务器连接成功,服务器就绪:" . $lastmessage . "
";
fputs($link,"HELO phpsetmail"."\r\n");
$lastmessage=fgets($link,2000);
echo "开始验证请求与服务器开始验证用户(登陆)
";
fputs($link,"AUTH LOGIN"."\r\n");//告诉smtp服务器我要开始发送验证了
$lastmessage=fgets($link,2000);
echo "开始发送用户名&密码使用验证码就可以了
";
fputs($link,base64_encode($username)."\r\n");
$lastmessage=fgets($link,2000);
//var_dump($lastmessage);
fputs($link,base64_encode($passwd)."\r\n");
$lastmessage=fgets($link,2000);
//发件人
fputs($link,"MAIL FROM:<$mailfrom>"."\r\n");
$lastmessage=fgets($link,2000);
//被发件人
fputs($link,"RCPT TO:<$rcptto>"."\r\n");
$lastmessage=fgets($link,2000);
//告诉服务器开始邮件数据
fputs($link,"DATA"."\r\n");
$lastmessage=fgets($link,2000);
//从开始发送数据
fputs($link,"From:$mailfrom1" . "\r\n");
fputs($link,"Subject:$title" . "\r\n");
fputs($link,"To:$rcptto" . "\r\n");
fputs($link,"\r\n");
fputs($link,$mail . "\r\n");
fputs($link,"." . "\r\n");
$lastmessage=fgets($link,2000);
var_dump($lastmessage);
}
}
?>