thinkphp实现发送邮件密码找回功能实例

本文实例讲述了thinkphp实现发送邮件密码找回功能的方法。分享给大家供大家参考。具体实现方法如下:

首先下载mail.class.php类文件,配置文件中定义下列参数:

代码如下:

'MAIL_ADDRESS' => 'ivzhu@qq.com', // 邮箱地址 
'MAIL_SMTP' => 'smtp.qq.com', // 邮箱SMTP服务器 
'MAIL_LOGINNAME' => 'mail@qq.com', // 邮箱登录帐号 
'MAIL_PASSWORD' => '123456', // 邮箱密码 
'MAIL_CHARSET' => 'UTF-8', // 编码 
'MAIL_AUTH' => true, // 邮箱认证 
'MAIL_HTML' => true, // true HTML格式 false TXT格式

在tp项目org中放入mail.class.php,使用时候引入 import('@.ORG.Mail');

代码如下:

public function index(){ 
    import('@.ORG.Mail'); 
    //SendMail('admin@waikucms.com','邮件标题','邮件正文','歪酷CMS管理员'); 
//解释下参数: 参数1---目标邮箱, 参数2----邮件标题,参数三--邮件正文,参数四---发件人名称; 
    $content=md5(time()); 
    session($content,$content); 
    $content=C('localurl').'/index.php'.U('Mail/index',array('res'=>$content)); 
    if(SendMail('aa@qq.com','nihao邮件标题',$content,'unphp')){ 
    echo 'chengong'; 
    }else{ 
    echo 'shibai'; 
    } 
$this->display(); 
}

另一个页面接受参数res:

代码如下:

public function index(){ 
header("Content-type: text/html; charset=utf-8");  
$res=I('res'); 
echo $res; 
if(session($res)==$res){ 
echo '密码找回成功'; 
session($res,null); 
}else{ 
echo '已经过期'; 

}

希望本文所述对大家的ThinkPHP框架程序设计有所帮助。

时间: 2014-11-29

thinkPHP商城公告功能开发问题分析

本文实例分析了thinkPHP商城公告功能开发问题.分享给大家供大家参考,具体如下: 效果如下 1.定在头部 position: fixed; z-index: 999; top: 0; opacity:1; 2.ajax处理json数据 // 获取商城公告 function getNotice() { // 获取公告函数 var res; $.ajax({ type: "POST", url: "{sh::U('Store/Mall/ajaxGetNotice',array

ThinkPHP中自定义错误页面和提示页面实例

本文实例讲述了ThinkPHP中自定义错误页面和提示页面的方法.分享给大家供大家参考.具体实现方法如下: 在ThinkPHP中有两个方法时提示错误页面 _404('错误信息','跳转的地址');halt('提示信息'); 这两个函数都可以自定义错误页面在配置文件中加 复制代码 代码如下: 'TMPL_EXCEPTION_FILE'=>'./Public/Tpl/error.html' 这样每次就会跳转到这个页面. 下面是我定制的错误页面 复制代码 代码如下: 在( 3 )秒后自动跳转,或直接点击

Thinkphp实现短信验证注册功能

前言 注册时经常需要用到短信验证码,本文记录一下思路和具体实现. 短信验证平台使用云片,短信验证码的生成使用thinkphp. 思路 1.用户输入手机号,请求获取短信验证码. 2.thinkphp生成短信验证码,存储,同时和其他参数一起发送请求给云片. 3.云片发送短信验证码到指定手机号. 4.用户输入短信验证码. 5.thinkphp根据验证码是否正确.验证码是否过期两个条件判断是否验证通过. 代码实现 验证接口 接口地址:https://sms.yunpian.com/v1/sms/send

thinkphp整合微信支付代码分享

本文实例为大家分享了thinkphp整合微信支付代码,供大家参考,具体内容如下 下载:支付SDK 将微信支付SDK放在第三方类库Vendor下面,请切记把WxPay.Config.php里面的商户信息修改为您的公众号信息,以避免造成资金的流失. php端代码 public function pay(){ //商户基本信息,可以写死在WxPay.Config.php里面,其他详细参考WxPayConfig.php vendor('Pay.JSAPI'); $tools = new \JsApiPa

thinkPHP订单数字提醒功能的实现方法

本文实例讲述了thinkPHP订单数字提醒功能的实现方法.分享给大家供大家参考,具体如下: 运行效果图如下: html: <ul class="am-avg-sm-5"> <li class="condition-li" status="0"> <span class="condition">全部<if condition="$num.all neq 0">&

ThinkPHP简单使用memcache缓存的方法

本文实例讲述了ThinkPHP简单使用memcache缓存的方法.分享给大家供大家参考,具体如下: Thinkphp的默认缓存方式是以File方式,在/Runtime/Temp 下生成了好多缓存文件. 服务器装了memcached后想给更改成memecache方式 在Conf/config.php 中添加 'DATA_CACHE_TYPE' => 'Memcache', 'MEMCACHE_HOST' => 'tcp://127.0.0.1:11211', 'DATA_CACHE_TIME'

thinkPHP线上自动加载异常与修复方法实例分析

本文实例讲述了thinkPHP线上自动加载异常与修复方法.分享给大家供大家参考,具体如下: 项目遇到一个奇怪的问题,本地代码正常,服务器上却不正常. 经过测试,应该是自动加载出了问题,尝试了各种方法, 1.手动加载,发现好麻烦,没完没了. 2.自己写自动加载,写不出来,尴尬. 3.修改配置,使其支持自动加载,发现还是不行. 后来进行调试, 发现本地支持 import('@.ORG.OSS\OssClient'); import('@.ORG.OSS\Core\OssUtil'); 而服务器上,不

ThinkPHP3.2.2的插件控制器功能

3.2.2版本开始支持插件控制器的调用,可以通过更加方便的URL地址访问到模块中某个插件定义的控制器. 当URL中传入插件控制器变量的时候,会自动定位到插件控制器中的操作方法. 插件控制器的变量由参数 VAR_ADDON 进行设置,默认为addon,例如我们在URL中传入: 复制代码 代码如下: http://serverName/Home/info/index/addon/SystemInfo 由于传入了addon参数,因此这里的User控制器并非原来的 复制代码 代码如下: Home/Con

ThinkPHP实现ajax仿官网搜索功能实例

本文实例讲述了ThinkPHP实现ajax仿官网搜索功能的方法.分享给大家供大家参考. 具体实现方法如下: 后台代码: 复制代码 代码如下: //搜索,如果在1不在0  function search(){      $keyword = $_POST['search'];      $Goods=M('goods');    //这里我做的一个模糊查询到名字或者对应的id,主要目的因为我这个系统是    //商城系统里面用到直接看产品ID      $map['goods_id|goods_n

ThinkPHP实现支付宝接口功能实例

本文实例讲述了ThinkPHP实现支付宝接口功能的方法.分享给大家供大家参考.具体分析如下: 最近做系统,需要实现在线支付功能,毫不犹豫,选择的是支付宝的接口支付功能,这里我用的是即时到帐的接口,具体实现的步骤如下: 一.下载支付宝接口包 下载地址:https://b.alipay.com/order/productDetail.htm?productId=2012111200373124&tabId=4#ps-tabinfo-hash 具体如何下载,我就不在罗嗦了-- 二.重新整理接口包文件,

基于ThinkPHP实现的日历功能实例详解

本文实例讲述了基于ThinkPHP实现的日历功能.分享给大家供大家参考,具体如下: 开发环境介绍 最新,闲来没事,便开发了一款简单的日历,来统计工作情况.为了开发便捷,使用ThinkPHP架构.界面如下图 备注:每页包含上一个月,当前月,下一个月的日期,并用不同的颜色区分,如果某天工作了,便圈出来. 主要是以下两个文件 重要文件描述 功能文件 CalenDar.class.php主要负责,获取日历详细信息的,不涉及用户数据操作. 代码如下: <?php namespace Util; class

thinkPHP微信分享接口JSSDK用法实例

本文实例讲述了thinkPHP微信分享接口JSSDK用法.分享给大家供大家参考,具体如下: 首先在数据库中添加access_token表: SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for access_token -- ---------------------------- DROP TABLE IF EXISTS `access_token`; CREATE TABLE `acc

jQuery+ThinkPHP+Ajax实现即时消息提醒功能实例代码

心血来潮想为自己的小项目做一个提醒系统,譬如私信,评论等消息都能及时传递过来.由于道行尚浅,网上那些长轮询对于我略微复杂,于是觉得还是自己写一写试试比较好. 我的思路是,单独在数据库中建一个提醒表,表主要由接收者的id和消息类型两个字段组成 /* 前台提醒表 */ CREATE TABLE IF NOT EXISTS notification( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, -- 主键自增 mid INT NOT NULL DEFAULT

CodeIgniter开发实现支付宝接口调用的方法示例

本文实例讲述了CodeIgniter开发实现支付宝接口调用的方法.分享给大家供大家参考,具体如下: 准备: 1.alipay官方下载最新接口类库 2.解压后,将目录"\即时到账交易接口-create_direct_pay_by_user\demo\create_direct_pay_by_user-PHP-UTF-8\lib"复制到 application\third_party目录下,并改名lib为alipay 3.同样复制cacert.pem文件到"application

JDBC中resutset接口操作实例详解

本文主要向大家展示JDBC接口中resutset接口的用法实例,下面我们看看具体内容. 1. ResultSet细节1 功能:封锁结果集数据 操作:如何获得(取出)结果 package com.sjx.a; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import org.junit.Test; //1. next方

Ajax上传图片及上传前先预览功能实例代码

手头上有几个小项目用到了easyUI,一开始决定使用easyUI就注定了项目整体上前后端分离,基本上所有的请求都采用Ajax来完成.在文件上传的时候用到了Ajax上传文件,以及图片在上传之前的预览效果,解决了这两个小问题,和小伙伴们分享下. 上传之前的预览 方式一 先来说说图片上传之前的预览问题.这里主要采用了HTML5中的FileReader对象来实现,关于FileReader对象,如果小伙伴们不了解,可以查看这篇文章HTML5学习之FileReader接口.我们来看看实现方式: <!DOCT

JavaWeb实现用户登录注册功能实例代码(基于Servlet+JSP+JavaBean模式)

下面通过通过图文并茂的方式给大家介绍JavaWeb实现用户登录注册功能实例代码,一起看看吧. 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp负责数据显示,javabean负责封装数据. Servlet+JSP+JavaBean模式程序各个模块之间层次清晰,web开发推荐采用此种模式. 这里以一个最常用的用户登录注册程序来讲解Servlet+JS

如何用struts调用支付宝接口

一.ACTION类关键代码 没用的包可以干掉 复制代码 代码如下: package com.hzdracom.alipay.action; import it.sauronsoftware.base64.Base64; import java.io.IOException;import java.io.PrintWriter;import java.net.HttpURLConnection;import java.util.HashMap;import java.util.Map;import

微信语音上传 下载功能实例代码

假如现在有一个按钮 <div class="inp_btn voice_btn active" id="record"> 按住 说话 </div> 下面就是调用微信jssdk的方法 var recorder; var btnRecord = $('#record'); var startTime = 0; var recordTimer = 300; // 发语音 $.ajax({ url: 'url请求需要微信的一些东西 下面success