本文實(shí)例講述了PHP利用緩存處理用戶注冊(cè)時(shí)的郵箱驗(yàn)證,成功后用戶數(shù)據(jù)存入數(shù)據(jù)庫(kù)。分享給大家供大家參考,具體如下:
?php
header("content-type:text/html;charset=utf-8");
@$atc=$_GET['atc'];
$mem=new Memcache();
$mem->connect("127.0.0.1","11211");
if($atc=="in"){
$res=$mem->add("login",$_POST,MEMCACHE_COMPRESSED,0);
$meil=$mem->get("login");
$address=$meil['address'];
include "./PHPMailer/Mail.class.php";
$validate=md5(md5("luyaran"));
$url="http://www.luyaran.com/login.php?atc=jihuovalidate=".urlencode(base64_encode($validate));
$content="a href='{$url}'>".$url."/a>";
if(Mail::send($content,$address)){
echo "script>alert('注冊(cè)成功');/script>";
}else{
echo "script>alert('注冊(cè)失敗');/script>";
}
}else if($atc=="login"){
//登陸時(shí)需查看狀態(tài)碼是否激活
include "table.html";
}else if($atc=="jihuo"){
//驗(yàn)證用戶名和密碼是否與緩存中的一致
include "table.html";
}else{
include "table2.html";
}
?>
?php
//引入原來的類文件
require 'class.phpmailer.php';
class Mail {
static public $error = '';
static public function send($content,$address){
$mail= new PHPMailer();
/*服務(wù)器相關(guān)信息*/
$mail->IsSMTP(); //設(shè)置使用SMTP服務(wù)器發(fā)送
$mail->SMTPAuth = true; //開啟SMTP認(rèn)證
$mail->Host = 'smtp.163.com'; //設(shè)置 SMTP 服務(wù)器,自己注冊(cè)郵箱服務(wù)器地址
$mail->Username = 'm18101301805@163.com'; //發(fā)信人的郵箱名稱
$mail->Password = 'luyaran520'; //發(fā)信人的郵箱密碼
/*內(nèi)容信息*/
$mail->IsHTML(true); //指定郵件格式為:html 不加true默認(rèn)為以text的方式進(jìn)行解析
$mail->CharSet ="UTF-8"; //編碼
$mail->From = 'm18101301805@163.com'; //發(fā)件人完整的郵箱名稱
//$mail->FromName = $user; //發(fā)信人署名
$mail->FromName = "崔金朋"; //發(fā)信人署名
//$mail->Subject = $title; //信的標(biāo)題
$mail->Subject = "激活顯示"; //信的標(biāo)題
$mail->MsgHTML($content); //發(fā)信主體內(nèi)容
//$mail->AddAttachment("15.jpg"); //附件
/*發(fā)送郵件*/
$mail->AddAddress($address); //收件人地址
//使用send函數(shù)進(jìn)行發(fā)送
if($mail->Send()) {
return true;
} else {
self::$error=$mail->ErrorInfo;
return false;
}
}
}
?>
附:PHP操作memcache(增刪改查)
?php
header("content-type:text/html;charset=utf-8");
$mem=new Memcache();
//var_dump($mem);
$mem->connect("127.0.0.1","11211");
//$mem->set("name","cuijinpeng",0,20);
//echo $mem->get("name");
//對(duì)象的操作
//class Dog{
// public $name;
// public $age;
// public function __construct($name,$age){
// $this->name = $name;
// $this->age = $age;
// }
//}
//$dog=new Dog('dog','12');
//$dog=$mem->add("dog",$dog,MEMCACHE_COMPRESSED,0);
//var_dump($dog);
//可以操作數(shù)據(jù)、字符串、數(shù)組、對(duì)象。。。
//添加數(shù)據(jù)
$mem->add("name","admin",MEMCACHE_COMPRESSED,0);
//修改數(shù)據(jù)
$mem->set("name","xiaohua",MEMCACHE_COMPRESSED,0);
//replace的使用
$mem->replace("name","xiaobai",MEMCACHE_COMPRESSED,0);
//刪除數(shù)據(jù)
$mem->delete("name");
//echo $mem->get("name");
?>
PS:Mail.class.php點(diǎn)擊此處本站下載。
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php緩存技術(shù)總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP基本語(yǔ)法入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- thinkphp5redis緩存新增方法實(shí)例講解
- PHP ob緩存以及ob函數(shù)原理實(shí)例解析
- 解決PHP Opcache 緩存刷新、代碼重載出現(xiàn)無法更新代碼的問題
- PHP網(wǎng)頁(yè)緩存技術(shù)優(yōu)點(diǎn)及代碼實(shí)例
- php加速緩存器opcache,apc,xcache,eAccelerator原理與配置方法實(shí)例分析
- TP5(thinkPHP框架)實(shí)現(xiàn)后臺(tái)清除緩存功能示例
- ThinkPHP3.2.3框架Memcache緩存使用方法實(shí)例總結(jié)
- PHP使用OB緩存實(shí)現(xiàn)靜態(tài)化功能示例
- 簡(jiǎn)單實(shí)用的PHP文本緩存類實(shí)例
- PHP緩存系統(tǒng)APCu擴(kuò)展的使用