本文实例讲述了PHP利用缓存处理用户注册时的邮箱验证,成功后用户数据存入数据库。分享给大家供大家参考,具体如下:
<?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=jihuo&validate=".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"){
//登陆时需查看状态码是否激活
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();
/*服务器相关信息*/
$mail- IsSMTP(); //设置使用SMTP服务器发送
$mail- SMTPAuth = true; //开启SMTP认证
$mail- Host = 'smtp.163.com'; //设置 SMTP 服务器,自己注册邮箱服务器地址
$mail- Username = 'm18101301805@163.com'; //发信人的邮箱名称
$mail- Password = 'luyaran520'; //发信人的邮箱密码
/*内容信息*/
$mail- IsHTML(true); //指定邮件格式为:html 不加true默认为以text的方式进行解析
$mail- CharSet ="UTF-8"; //编码
$mail- From = 'm18101301805@163.com'; //发件人完整的邮箱名称
//$mail- FromName = $user; //发信人署名
$mail- FromName = "崔金朋"; //发信人署名
//$mail- Subject = $title; //信的标题
$mail- Subject = "激活显示"; //信的标题
$mail- MsgHTML($content); //发信主体内容
//$mail- AddAttachment("15.jpg"); //附件
/*发送邮件*/
$mail- AddAddress($address); //收件人地址
//使用send函数进行发送
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);
//可以操作数据、字符串、数组、对象。。。
//添加数据
$mem- add("name","admin",MEMCACHE_COMPRESSED,0);
//修改数据
$mem- set("name","xiaohua",MEMCACHE_COMPRESSED,0);
//replace的使用
$mem- replace("name","xiaobai",MEMCACHE_COMPRESSED,0);
//删除数据
$mem- delete("name");
//echo $mem- get("name");
?
PS:Mail.class.php点击此处本站下载。
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php缓存技术总结》、《php面向对象程序设计入门教程》、《PHP基本语法入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。