本文實例講述了PHP利用緩存處理用戶注冊時的郵箱驗證,成功后用戶數(shù)據(jù)存入數(shù)據(jù)庫。分享給大家供大家參考,具體如下:
?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('注冊成功');/script>";
}else{
echo "script>alert('注冊失敗');/script>";
}
}else if($atc=="login"){
//登陸時需查看狀態(tài)碼是否激活
include "table.html";
}else if($atc=="jihuo"){
//驗證用戶名和密碼是否與緩存中的一致
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();
/*服務器相關(guān)信息*/
$mail->IsSMTP(); //設(shè)置使用SMTP服務器發(fā)送
$mail->SMTPAuth = true; //開啟SMTP認證
$mail->Host = 'smtp.163.com'; //設(shè)置 SMTP 服務器,自己注冊郵箱服務器地址
$mail->Username = 'm18101301805@163.com'; //發(fā)信人的郵箱名稱
$mail->Password = 'luyaran520'; //發(fā)信人的郵箱密碼
/*內(nèi)容信息*/
$mail->IsHTML(true); //指定郵件格式為:html 不加true默認為以text的方式進行解析
$mail->CharSet ="UTF-8"; //編碼
$mail->From = 'm18101301805@163.com'; //發(fā)件人完整的郵箱名稱
//$mail->FromName = $user; //發(fā)信人署名
$mail->FromName = "崔金朋"; //發(fā)信人署名
//$mail->Subject = $title; //信的標題
$mail->Subject = "激活顯示"; //信的標題
$mail->MsgHTML($content); //發(fā)信主體內(nèi)容
//$mail->AddAttachment("15.jpg"); //附件
/*發(fā)送郵件*/
$mail->AddAddress($address); //收件人地址
//使用send函數(shù)進行發(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");
//對象的操作
//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ù)組、對象。。。
//添加數(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點擊此處本站下載。
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php緩存技術(shù)總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《PHP基本語法入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計有所幫助。
您可能感興趣的文章:- thinkphp5redis緩存新增方法實例講解
- PHP ob緩存以及ob函數(shù)原理實例解析
- 解決PHP Opcache 緩存刷新、代碼重載出現(xiàn)無法更新代碼的問題
- PHP網(wǎng)頁緩存技術(shù)優(yōu)點及代碼實例
- php加速緩存器opcache,apc,xcache,eAccelerator原理與配置方法實例分析
- TP5(thinkPHP框架)實現(xiàn)后臺清除緩存功能示例
- ThinkPHP3.2.3框架Memcache緩存使用方法實例總結(jié)
- PHP使用OB緩存實現(xiàn)靜態(tài)化功能示例
- 簡單實用的PHP文本緩存類實例
- PHP緩存系統(tǒng)APCu擴展的使用