m_Orchestrate learning system---二、如何实现验证码自动点击刷新
m_Orchestrate learning system---二、如何实现验证码自动点击刷新
一、总结
一句话总结:传过去的url带随机数来避免读取缓存
onclick="this.src='{:captcha_src()}?'+Math.random();"
1、如何实现验证码自动点击刷新?
<img width="100%" style="cursor: pointer" src="{:captcha_src()}" alt="captcha" onclick="this.src='{:captcha_src()}?'+Math.random();" /
1、鼠标手型
2、点击事件
3、路径写法,问号位置,加号位置,单引号位置
2、thinkphp验证码如何验证?
$captcha = new \think\captcha\Captcha();
if (!$captcha->check($data['code'])) {
$this->error('验证码错误');
}
<?php
namespace app\index\controller;
use think\Loader;
use think\Validate; use app\index\controller\Base; class Login extends Base
{
//登录
public function login()
{
if(request()->isPost()){
//1、获取用户从页面上传过来的账号和密码
$data=input('post.');
// dump($data);die;
//2、对获取的数据进行验证
$captcha = new \think\captcha\Captcha();
if (!$captcha->check($data['code'])) {
$this->error('验证码错误');
}
$validate = Loader::validate('Login');
if(!$validate->scene('login')->check($data)){
$this->error($validate->getError()); die;
} //3、在数据库中查找此用户和密码,找到则登录成功,没找到则登录失败
$res=db('user')->where('username',$data['username'])->where('password',md5($data['password']))->where('status',$data['status'])->find();
//4、如果在数据库中查找到数据,则判断是老师还是学生,跳转到相应的页面去,没有就直接返回错误界面
if($res){
if($data['status']) $this->success("即将跳转到老师界面!!");
else $this->success("即将跳转到学生界面!!");
}else{
$this->error('用户名或者密码错误或者未注册!!');
} } return view();
}
3、thinkphp如何跨模块调用?
实例
if($data['status']) $this->success("即将跳转到老师界面!!",url('teacher/index/index'));
else $this->success("即将跳转到学生界面!!",url('student/index/index'));
参考手册
url 和 控制器中的跳转和重定向

4、如何实现button的链接?
在button外面套上a标签就好,或者用js
同理,如果实现图片链接,就在图片img标签外面套上a标签就好
因为能超链接的不是a就是js,要不就是form
用a标签来实现
<a href="链接的地址"><img src="图片的URL" width="图片的宽度" height="图片的高度" border="边框"></a>
定义和用法
<a> 标签定义超链接,用于从一张页面链接到另一张页面。
<a> 元素最重要的属性是 href 属性,它指示链接的目标。
<a href="javascript:;" class="tpl-table-images-content-i">
<div class="tpl-table-images-content-i-info">
<span class="ico">
<img src="__TEACHER__/assets/img/user02.png" alt="">追逐
</span> </div>
<span class="tpl-table-images-content-i-shadow"></span>
<img src="__TEACHER__/assets/img/a1.png" alt="" >
</a>
二、内容在总结中
项目地址
fry404006308/m_Orchestrate: m_Orchestrate
https://github.com/fry404006308/m_Orchestrate
m_Orchestrate learning system---二、如何实现验证码自动点击刷新的更多相关文章
- m_Orchestrate learning system---十二、为什么thinkphp验证场景里面的多个属性之间是逗号
m_Orchestrate learning system---十二.为什么thinkphp验证场景里面的多个属性之间是逗号 一.总结 一句话总结:因为是数组啊 1 protected $scene ...
- 利用onekeyup即可实现验证码的点击刷新功能
显示验证码 首先在Home/Controller下创建一个公共控制器PublicController 1 <php2 namespace Home\Controller;3 4 use Thin ...
- ThinkPHP 实现验证码渲染、校验、点击刷新
一.在控制器中写方法,生成验证码,代码如下: /** * 验证码生成 * expire 验证码的有效期(秒) * useImgBg 是否使用背景图片 默认为false * fontSize 验证码字体 ...
- m_Orchestrate learning system---二十二、html代码如何变的容易
m_Orchestrate learning system---二十二.html代码如何变的容易 一.总结 一句话总结:(结构清晰之后构建页面就变得超级容易了)(多做多用一下子就熟了) 1.文章显示页 ...
- m_Orchestrate learning system---三十二、数据库字段判断为空时容易出现问题,如何从根本上解决这个问题
m_Orchestrate learning system---三十二.数据库字段判断为空时容易出现问题,如何从根本上解决这个问题 一.总结 一句话总结:字段禁止为空,设置默认值0即可 禁止 空 默认 ...
- Machine Learning - 第6周(Advice for Applying Machine Learning、Machine Learning System Design)
In Week 6, you will be learning about systematically improving your learning algorithm. The videos f ...
- m_Orchestrate learning system---二十七、修改时如何快速找到作用位置
m_Orchestrate learning system---二十七.修改时如何快速找到作用位置 一.总结 一句话总结:找人,找起作用的位置真的重要,找到就事半功倍了 加载页面的时候观察在f12的e ...
- m_Orchestrate learning system---三、session使用完整流程是什么
m_Orchestrate learning system---三.session使用完整流程是什么 一.总结 一句话总结: 1.在登录成功之后设置session和cookie 2.在公共控制器里面使 ...
- m_Orchestrate learning system---三十六、如何修改插件的样式(比如ueditor)
m_Orchestrate learning system---三十六.如何修改插件的样式(比如ueditor) 一.总结 一句话总结:所有的js,html插件,修改样式无非是两种,一是直接修改css ...
随机推荐
- 【POJ 1082】 Calendar Game
[题目链接] http://poj.org/problem?id=1082 [算法] 对于每种状态,要么必胜,要么必败 记忆化搜索即可 [代码] #include <algorithm> ...
- 25.QT进度条
#ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> 5 #include <QProgressBar&g ...
- Spark RDD概念学习系列之transformation操作
不多说,直接上干货! transformation操作 惰性求值 (1)RDD 的转化操作都是惰性求值的.这意味着在被调用行动操作之前Spark不会开始计算. (2)读取数据到RDD的操作也是惰性的. ...
- Spark RDD概念学习系列之不同角度看RDD
不多说,直接上干货!
- Excel—— [导入到数据库] or 将数据 [导入到Excel]
将Excel导入到数据库实现如下: 前台代码: @model IEnumerable<Model.Student> @{ Layout = null; } <!DOCTYPE htm ...
- Unity3D基础
鼠标事件: OnMouseEnter():鼠标进入 OnMouseExit():鼠标移出 OnMouseDown():鼠标点击 OnMouseUp():鼠标抬起 static GameObject I ...
- Repeater控件使用小结持续更新
Repeater嵌套Repeater绑定数据 前台代码 <!--注意层级关系不要写错了--> <asp:Repeater ID="rpGroup" runat=& ...
- ASP.NET中各种缓存技术的特点及使用场景
对于一些不经常改变却经常被request的数据,我们喜欢将它们缓存在内存.这样用户请求时先到缓存中去取,如果缓存中没有,再去数据库拿,提高响应速度.缓存一般实现在BLL,这样可以与DAL分离,更换数据 ...
- C语言文件操作函数之ferror & feof & clearerr
这些函数都是和文件读写时发生错误有关,下面一一分析: 1:ferror 原型:int ferror(FILE * fp) 作用:测试一个文件流是否被设置了错误标识符,如果是返回非 0 整数,否则返回 ...
- Java对象、Json、Xml转换工具Jackson使用
在Java项目中將一个对象转换成一段Json格式的字符串是非常常见的,能够实现这种需求的工具包也比较多,例如Gson.JSON-lib.Jackson等等.本文主要介绍Jackson的使用,Jacks ...