PHP通过SMTP服务器发送邮件

一直报错一直有各种各样的问题,一步一步改,最终成功了,哈哈,我都不知道我安装的SMTP服务器到底有没有作用,居然就成功啦,开森

调用部分的代码如下:

require_once "include/email.class.php";
        //******************** 配置信息 ********************************
        $smtpserver = "ssl://smtp.163.com";//SMTP服务器
        $smtpserverport =465;//SMTP服务器端口
        $smtpusermail = "18855032520@163.com";//SMTP服务器的用户邮箱
        $smtpemailto = $row['email'];//发送给谁
        $smtpuser = "18855032520";//SMTP服务器的用户帐号
        $smtppass = "j××××××××22";//SMTP服务器的用户密码(我的163邮箱的授权码)//jdmmfnrzwioucajb
        $mailtitle = "OJ系统密码重置激活";//邮件主题
        $mailcontent = "$lost_user_id:\n您好!\n您在OJ系统选择了找回密码服务,为了验证您的身份,请将下面字串输入口令重置页面以确认身份:".$_SESSION[$OJ_NAME.'_'.'lost_key']."\n\n\n安徽科技学院在线评测系统";//邮件内容
        $mailtype = "TXT";//邮件格式(HTML/TXT),TXT为文本邮件

        //************************ 配置信息 ****************************
        $smtp = new smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppass);//这里面的一个true是表示使用身份验证,否则不使用身份验证.
        $smtp->debug =false;//是否显示发送的调试信息
        $state = $smtp->sendmail($smtpemailto, $smtpusermail, $mailtitle, $mailcontent, $mailtype);

        require("template/".$OJ_TEMPLATE."/lostpassword2.php");

其中的mail.class.php代码真的改了好久,因为原来下载的代码里面的有的函数和用法已经过时了,我全都改过来了

<?php
class smtp

{
   
   

/* Public Variables */

var $smtp_port;

var $time_out;

var $host_name;

var $log_file;

var $relay_host;

var $debug;

var $auth;

var $user;

var $pass;

/* Private Variables */ 
var $sock;

/* Constractor */

function smtp($relay_host = "", $smtp_port = 25,$auth = false,$user,$pass)

{
   
   

$this->debug = FALSE;

$this->smtp_port = $smtp_port;

$this->relay_host = $relay_host;

$this->time_out = 30; //is used in pfsockopen()
#

$this->auth = $auth;//auth

$this->user = $user;

$this->pass = $pass;

#

$this->host_nam
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值