簡單php發送郵件

PHP如何發郵件?

知識點:郵件相關的協議:php

smtp:發郵件,端口:25html

pop3:收郵件,端口:110服務器

 

1、要有郵件服務器socket

本身搭建一個郵箱服務器函數

使用現有的:126163等等。ui

163發郵件的接口:smtp.163.com    ssl://smtp.qq.com編碼

2、在163註冊一個郵箱帳號spa

php中發送郵件使用一個 phpmailer的類。htm

phpmailer發送郵件示例

注意事項: 接口

啓用fsockopen函數

首先,在php.ini中去掉下面的兩個分號

複製代碼 代碼示例:

extension=php_sockets.dll

extension=php_openssl.dll

 

代碼案例:

<?php

 require 'PHPMailer/class.phpmailer.php';

 $mail             = new PHPMailer();

/*服務器相關信息*/

$mail->IsSMTP();                        //設置使用SMTP服務器發送

$mail->SMTPAuth   = true;               //開啓SMTP認證

$mail->Host       = 'smtp.163.com';        //設置 SMTP 服務器,本身註冊郵箱服務器地址

$mail->Username   = 'lau0400810121';   //發信人的郵箱名稱

$mail->Password   = 'lau13142yun';          //發信人的郵箱密碼

/*內容信息*/

$mail->IsHTML(true);          //指定郵件格式爲:html

$mail->CharSet    ="UTF-8";      //編碼

$mail->From       = 'lau0400810121@163.com';    //發件人完整的郵箱名稱

$mail->FromName   = '地球球長委員會';  //發信人署名

$mail->Subject    = "地球的球長選舉";    //信的標題

$mail->MsgHTML("尊敬的用戶:明天開會,會後,我請客");    //發信主體內容

        /*發送郵件*/

$mail->AddAddress(「18665455185@163.com");    //收件人地址

        //使用send函數進行發送

if($mail->Send()) {

   echo 'ok ok';

} else {

            echo $mail->ErrorInfo;//若是發送失敗,則返回錯誤提示

}

 

做業案例

完成用戶註冊完成後,要經過郵箱驗證。若是用戶密碼忘了,能夠經過郵箱找回密碼

create table ci_user1(

            id int primary key auto_increment,

            username   varchar(32) not null comment '用戶的名稱',

            password   char(32) not null comment '用戶的密碼',

            active  tinyint  not null default 0  comment '激活的標誌,0表示沒有激活,1表示已經激活',

            validate varchar(32) not null comment '激活的用戶的校驗碼',

            question varchar(32) not null comment '問題的名稱',

            answer varchar(32) not null comment '問題的答案'

)

完成用戶註冊,找回密碼案例

相關文章
相關標籤/搜索