未开启 php_gd2设置 php的配置文件php.ini,搜索extension=php_gd2.dll,去掉前面的分号即可: 1.在模块类中增加一个 verify 方法来用于显示验证码Public function verify(){ // 导入Image类库 import("ORG.Util.Image"); Image::buildImageVerify(); } 2.表单中使用验证码 <input type="text" name="ver…
今天在做网站部署的时候,发现登录页面的验证码显示不出来了,而且不报任何错误. 直接通过url访问该操作也不能显示. 后来在网上查找了一些解决方法. 在调用$verify = new \Think\Verify();之前增加ob_clean();可以解决此问题. ob_clean这个函数的作用: 用来丢弃输出缓冲区中的内容,如果你的网站有许多生成的图片类文件,那么想要访问正确,就要经常清除缓冲区. 自己做个笔记,同时与遇到同样问题的朋友分享一下经验.…
RBAC是什么,能解决什么难题? RBAC是Role-Based Access Control的首字母,译成中文即基于角色的权限访问控制,说白了也就是用户通过角色与权限进行关联[其架构灵感来源于操作系统的GBAC(GROUP-Based Access Control)的权限管理控制].简单的来说,一个用户可以拥有若干角色,每一个角色拥有若干权限.这样,就构造成“用户-角色-权限”的授权模型.在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系.其对应关系如下: 在许多的实际应用中,…
1.应当这样<imp src='验证码路径' onclick="this.src='验证码路径?'+Math.random()">;如果后面不加Math.random()函数的话,则是无法刷新的 参考:http://www.cnblogs.com/TigerYangWTH/p/5893603.html 2.验证码显示不出来的原因是:在输出验证码前你已经有输出,所以要ob_clean()函数清除原先的输出,这样才能够显示:如果原先没有任何输出的话,则是可以显示验证码的 3.在…
thinkphp 中模型究竟是什么用? 问题 似乎所有的操作都能在控制器中就能完成,模型除了几种验证之外,究竟是干什么用的,这个问题一直没理解透 解答 解答一 要明白这个问题,必须了解 MVC 历史.早在 MVC 出现以前,程序员是将 html.css.js.php.SQL 写在一个 .php 文件内的,那时的网页非常简单.后来复杂了,需要多个人协同开发,一个开发后台,专写 php + SQL,一个开发前端,专写 html + css + js.形成了 VC 架构,但有个问题,他们之间不是异步开…
不但要记住核心的东西, 还要记住 相关的 东西: 如php cli的版本是 5.6.14 bulit: sep 30, 2015 tp中, 通常说的系统就是框架; 项目就是 "应用程序",就是"网站" 模板, 用Tpl表示, 为什么不用Tmp, 因为temp常常简写为tmp, 可能被误解为 "临时目录", 而tmpl则不会产生误解?? 控制器为什么用m表示, 而不用c: controller表示? 第一, 好像c表示的是conifg, 配置, 而…
ThinkPHP中initialize()和construct()这两个函数都可以理解为构造函数,前面一个是tp框架独有的,后面的是php构造函数,那么这两个有什么不同呢? 在网上搜索,很多答案是两者是一样的,ThinkPHP中initialize相当于php的construct,这么说是错误的,如果这样,tp为什么不用construct,而要自己弄一个ThinkPHP版的initialize构造函数呢? 自己试一下就知道两者的不同了. a.php class a{ function __con…
在ThinkPHP封装了Session类,用户可以直接使用,常用的方法有: Session::set(name, value):注册 session . Session::is_set(name):检查Session的值是否设置. Session::get(name):读取 session . Session::clear():清空Session. Session::destroy():销毁 session . ThinkPHP 默认开启了 session 会话,因此在使用 Session 类之…
ThinkPHP中的模型 1.为什么要创建数据对象 案例:使用ThinkPHP完成部门管理 ① 设计数据库 ② 创建Dept控制器 路径:./Application/Admin/Controller创建控制器 规则:DeptController.class.php 编程程序三步走 ③ 复制add.html模板到./Application/Admin/View/Dept文件夹,更改模板路径 ④ 更改View/Index/index.html左侧导航 ⑤ 获取添加功能的上级部门(使用模型) 路径:.…
ThinkPHP中的视图 1.模板注释 在实际项目开发中,经常要使用注释功能,如果是ThinkPHP框架,则可以在模板文件中使用如下方式进行注释: {// 注释内容 } :单行注释 {/* 注释内容 */ } :多行注释   示例代码: 运行以上代码可知:ThinkPHP框架中的模板注释属于服务端注释,并不会显示输出在客户端浏览器. 2.fetch获取模板内容 在实际项目开发中,如果我们只想获取模板内容但又不输出,那这个时候可以考虑使用fetch方法进行实现. $this->fetch() :①…