PHP利用缓存处理用户注册时的邮箱验证,成功后用户数据存入数据库操作示例
本文实例讲述了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程序设计有所帮助。
赞 (0)