PHP利用缓存处理用户注册时的邮箱验证,成功后用户数据存入数据库操作示例


Posted in PHP onDecember 31, 2019

本文实例讲述了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 相关文章推荐
不用mod_rewrite直接用php实现伪静态化页面代码
Oct 04 PHP
php开发环境配置记录
Jan 14 PHP
php var_export与var_dump 输出的不同
Aug 09 PHP
php全角字符转换为半角函数
Feb 07 PHP
PHP错误WARNING: SESSION_START() [FUNCTION.SESSION-START]解决方法
May 04 PHP
PHP针对常规模板引擎中与CSS/JSON冲突的解决方法
Aug 19 PHP
详解 PHP加密解密字符串函数附源码下载
Dec 18 PHP
php实现当前页面点击下载文件的实例代码
Nov 16 PHP
php实现购物车功能(以大苹果购物网为例)
Mar 09 PHP
Thinkphp5结合layer弹窗定制操作结果页面
Jul 07 PHP
thinkphp3.2实现在线留言提交验证码功能
Jul 19 PHP
php使用mysqli和pdo扩展,测试对比连接mysql数据库的效率完整示例
May 09 PHP
Laravel 手动开关 Eloquent 修改器的操作方法
Dec 30 #PHP
Laravel 集成微信用户登录和绑定的实现
Dec 27 #PHP
PHP单元测试配置与使用方法详解
Dec 27 #PHP
PHP全局使用Laravel辅助函数dd
Dec 26 #PHP
解决php用mysql方式连接数据库出现Deprecated报错问题
Dec 25 #PHP
PHP高并发和大流量解决方案整理
Dec 24 #PHP
thinkphp5实现微信扫码支付
Dec 23 #PHP
You might like
PHP实现邮件群发的源码
2013/06/18 PHP
PHP获取php,mysql,apche的版本信息示例代码
2014/01/16 PHP
PHP解析RSS的方法
2015/03/05 PHP
php简单计算页面加载时间的方法
2015/06/19 PHP
PHP 进度条函数的简单实例
2017/09/19 PHP
Javascript实例教程(19) 使用HoTMetal(2)
2006/12/23 Javascript
javascript 写的一个简单的timer
2009/07/30 Javascript
深入理解Javascript动态方法调用与参数修改的问题
2013/12/10 Javascript
用javascript关闭本窗口不弹出询问框的方法
2014/09/12 Javascript
实用框架(iframe)操作代码
2014/10/23 Javascript
利用js实现禁止复制文本信息
2015/06/03 Javascript
node.JS md5加密中文与php结果不一致的解决方法
2017/05/05 Javascript
jQuery制作全屏宽度固定高度轮播图(实例讲解)
2017/07/08 jQuery
详解webpack import()动态加载模块踩坑
2018/07/17 Javascript
VUE预渲染及遇到的坑
2018/09/03 Javascript
Vue.js中Line第三方登录api的实现代码
2020/06/29 Javascript
JavaScript 判断浏览器是否是IE
2021/02/19 Javascript
利用Python中的输入和输出功能进行读取和写入的教程
2015/04/14 Python
浅谈python正则的常用方法 覆盖范围70%以上
2018/03/14 Python
简单了解python 邮件模块的使用方法
2019/07/24 Python
python爬虫 批量下载zabbix文档代码实例
2019/08/21 Python
Numpy之将矩阵拉成向量的实例
2019/11/30 Python
Python CSV文件模块的使用案例分析
2019/12/21 Python
简单的Python人脸识别系统
2020/07/14 Python
JBL英国官网:JBL UK
2018/07/04 全球购物
SmartBuyGlasses德国:购买太阳镜和眼镜
2019/08/20 全球购物
英国卫浴商店:Ergonomic Design
2019/09/22 全球购物
Smilodox官方运动服装店:从运动服到健身配件
2020/08/27 全球购物
护士自荐信
2013/10/25 职场文书
正规的求职信范文分享
2013/12/11 职场文书
超级搞笑检讨书
2014/01/15 职场文书
购房意向书
2014/08/30 职场文书
党的群众路线教育实践活动个人批评与自我批评
2014/10/16 职场文书
css3实现的加载动画效果
2021/04/07 HTML / CSS
看完这篇文章获得一些java if优化技巧
2021/07/15 Java/Android
Python实现猜拳与猜数字游戏的方法详解
2022/04/06 Python