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 相关文章推荐
利用php来自动调用不同服务器上的flash
Oct 09 PHP
解决中英文字符串长度问题函数
Jan 16 PHP
NOD32 v2.70.32 简体中文封装版 提供下载了
Feb 27 PHP
PHP添加MySQL数据记录代码
Jun 07 PHP
setcookie中Cannot modify header information-headers already sent by错误的解决方法详解
May 08 PHP
PHP函数addslashes和mysql_real_escape_string的区别
Apr 22 PHP
php学习笔记之面向对象
Nov 08 PHP
php一行代码获取文件后缀名实例分析
Nov 12 PHP
PHP实现获取第一个中文首字母并进行排序的方法
May 09 PHP
微信公众号实现会员卡领取功能
Jun 08 PHP
PHP实现批量重命名某个文件夹下所有文件的方法
Sep 04 PHP
PHP正则表达式函数preg_replace用法实例分析
Jun 04 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
基于mysql的论坛(5)
2006/10/09 PHP
PHP 中dirname(_file_)讲解
2007/03/18 PHP
php设计模式 Command(命令模式)
2011/06/26 PHP
php中使用Ajax时出现Error(c00ce56e)的详细解决方案
2014/11/03 PHP
thinkphp实现发送邮件密码找回功能实例
2014/12/01 PHP
PHP __call()方法实现委托示例
2019/05/20 PHP
关于IE、Firefox、Opera页面呈现异同 写脚本很痛苦
2009/08/28 Javascript
js判断样式className同时增加class或删除class
2013/01/30 Javascript
jQuery对指定元素中指定字符串进行替换的方法
2015/03/17 Javascript
jQuery中$this和$(this)的区别介绍(一看就懂)
2015/07/06 Javascript
解决jQuery使用JSONP时产生的错误
2015/12/02 Javascript
jquery实现一个简单的表单验证实例
2016/03/30 Javascript
jQuery解析与处理服务器端返回xml格式数据的方法详解
2016/07/04 Javascript
Node.js实现文件上传
2016/07/05 Javascript
详解Angular.js指令中scope类型的几种特殊情况
2017/02/21 Javascript
微信小程序实现轮播图效果
2017/09/07 Javascript
js JSON.stringify()基础详解
2019/06/19 Javascript
vue日历/日程提醒/html5本地缓存功能
2019/09/02 Javascript
Python引用模块和查找模块路径
2016/03/17 Python
Python中字典和集合学习小结
2017/07/07 Python
python中单下划线_的常见用法总结
2018/07/10 Python
详解python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'如何解决
2019/08/27 Python
Python中关于浮点数的冷知识
2019/09/22 Python
Python函数的返回值、匿名函数lambda、filter函数、map函数、reduce函数用法实例分析
2019/12/26 Python
如何利用Python 进行边缘检测
2020/10/14 Python
墨西哥皇宫度假村预订:Palace Resorts
2018/06/16 全球购物
英国泽西岛植物:Jersey Plants Direct
2019/08/07 全球购物
领导的自我鉴定
2013/12/28 职场文书
《绿色蝈蝈》教学反思
2014/03/02 职场文书
老公保证书范文
2014/04/29 职场文书
小学英语教师先进事迹
2014/05/28 职场文书
2015年禁毒工作总结
2015/04/30 职场文书
2015年终个人政治思想工作总结
2015/11/24 职场文书
CocosCreator如何实现划过的位置显示纹理
2021/04/14 Javascript
看完这篇文章获得一些java if优化技巧
2021/07/15 Java/Android
尝试使用Python爬取城市租房信息
2022/04/12 Python