tp5生成6位不重复验证码
2024-10-18 21:25:06
/**
* 获取激活码
*/
public function getnum()
{
$time = Db::name('fangchan_jihuoma')->group('id desc')->limit(1)->find();//从上一次生成的时间开始计算
$num='';
if(empty($time)){
$num = microtime(true);
}else{
$num = $time['info_time'];
}
for ($i = $num; $i < ($num + 5); $i++) {
// dump(substr(md5($i), 0, 6));exit;
Db::name("fangchan_jihuoma")->insert([
'num' => substr(md5($i), 0, 6),
'status' => '',
'created_time' => time(),
'info_time' => $i
]);
}
$sql = "select count(*) as sum,num from osc_fangchan_jihuoma group by num HAVING sum>1";//查出有多少个重复的验证码和重复验证码内容
$data = Db::query($sql);
if(!empty($data)) {
foreach($data as $k=> $v) {
for($j=0;$j<$v['sum'];$j++){
Db::name("fangchan_jihuoma")->where('num',1)->where('status',0)->delete();删除重复的验证码
}
}
}
$this->success('激活码已生成!');
}
CREATE TABLE `osc_fangchan_jihuoma` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增长id',
`num` varchar(8) NOT NULL COMMENT '激活码',
`uid` int(10) unsigned zerofill DEFAULT NULL COMMENT 'member表id',
`status` tinyint(1) unsigned zerofill NOT NULL DEFAULT '' COMMENT '是否核销 0:未核销,1:已核销',
`created_time` int(11) NOT NULL DEFAULT '' COMMENT '激活码创建时间',
`info_time` int(11) NOT NULL DEFAULT '' COMMENT '标记用时间',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=134 DEFAULT CHARSET=utf8mb4;
最新文章
- 关于Django 错误 查询之后结果序列化出现的问题is not JSON serializable
- CDDA 源码解析
- React,React Native中的es5和es6写法对照
- jqurey datatable tableTools 自定义button元素 以及按钮自事件
- [Linux]Linux下安装和配置solr/tomcat/IK分词器 详细实例二.
- Android---表格布局
- compact过滤数组中的nil
- 我收集到的最好的jQuery和CSS3导航菜单
- Volley完全解析
- RxSwift 系列(二) -- Subject
- 前端之BOM和DOM
- [TJOI2009]猜数字
- c迭代器与生成器
- Js点击触发Css3的动画Animations、过渡Transitions效果
- linux内核中的IPIs是什么?
- 20165320 实验一 java环境的熟悉
- Android实践项目汇报
- linux - 【LAMP环境配置安装注意安装步骤】 9
- 20155315 2017-05-10 《Java程序设计》课堂代码检查
- OpenERP实施记录(12):付款处理
热门文章
- shell利用mysql表项的icmp检测
- 使用freemarker生成word文档处理表格数据
- linux中gcc和g++的区别
- 【原创】大数据基础之Impala(3)部分调优
- Linux Shell下”>;/dev/null 2>;&;1“相关知识说明
- SpringMVC-Helloworld 的归纳理解
- eclipse中jetty插件安装
- python介绍及下载
- 自定义admin组件
- Object.defineProperty()属性介绍