如果是要导入 前后台分组都公用的 第三方类库, 就将类库(*.class.php文件) 放在 App下的Class文件夹中.

导入方法是:

import('Class.Image', APP_PATH);

---------------------------- ==

在项目的配置文件目录Conf下有一个配置文件:config.php,

可以把所有的配置项都放在这个文件里面,

为了分门别类, 便于管理配置文件, 也可以使用多个配置文件, 但是也可以把某些特别的配置项/配置内容放在另外的单独的文件中, 如: another.config.php

但是要在 "主"配置文件中config.php中, 设置: 'LOAD_EXT_CONFIG'=>another.config.php

由此, 也可以看出, 并不是所有的配置项, 都在 TP/Conf/convention.php中查得到.

THINKPHP框架, 提供了完整的系统常量 "系": "path系"和"name系"

path系: APP_PATH, GROUP_PATH, MODULE_PATH, CORE_PATH, LIB_PATH,

下面的name系: 同上面的一系列....

------------------------------------- ==

public function captcha(){

// load my class 加载自定义的第三方类

//echo APP_PATH.'Modules/'.GROUP_NAME; // 预先看看自定义类库的路径

//die;

import('MyImage.Image',APP_PATH.'Modules/'.GROUP_NAME); // 这时候加载的是: App/Modules/Admin/MyImage/ 目录下的Image类库

Image::buildImageVerify();

}

经检验, 能够正确加载!

--------------------------------- ==

关于生成验证码的问题?

要注意, 首先, 这个验证码应该是一个图像! 所以在 对应的html文件中, 应该使用 img.... 标签, 然后, 考虑 src属性?

类库Image的方法buildImageVerfify 返回的是一个 字符串:

    /**
* 生成图像验证码
* @static
* @access public
* @param string $length 位数
* @param string $mode 类型
* @param string $type 图像格式
* @param string $width 宽度
* @param string $height 高度
* @return string
*/
static function buildImageVerify($length=4, $mode=1, $type='png', $width=48, $height=22, $verifyName='verify') { 所以它正好可以作为 验证码的 img的 src属性值! 即: <img src={:U(GROUP_NAME.'/Login/captcha')} />

要注意的是, 在html中使用模板的格式是: 要在最外面的地方加大括号, 再在大括号里面使用 :U或 php变量$..., 而不是把冒号: 写在大括号的外面/前面了!否则就 不会被作为模板变量被替换, 而是作为原来的字符串而出错!

<form action="{:U('Admin/Login/verify')}" >  // 这里不是 :{U(.....)}

	<tr>
<td>captcha</td>
<td><input type="text" /><img src="{:U(GROUP_NAME.'/Login/captcha')}" /></td>
</tr> // src="{:U(GROUP_NAME.'/Login/captcha') U方法得到的实际上是一个 包含图片的 captcha.html页面, 这个跟 src=xx.png 的效果是一样的!

黄永成-thinkphp讲解-个人博客讲解26集的更多相关文章

  1. 黄永成-thinkphp讲解-个人博客讲解25集

    整个网站的根目录用blog你要跟别人说起,自己好识别的文件夹名字. 下面的项目名称 就不再重复的写了, 直接用App就好了. 网站访问: ...../index.php(入口文件)/Admin(模块名 ...

  2. Alpha阶段 - 博客链接合集

    Alpha阶段 - 博客链接合集 项目Github地址 安卓端(Stardust):https://github.com/StardustProject/Stardust 服务器端(Gravel):h ...

  3. Beta阶段 - 博客链接合集

    Beta阶段 - 博客链接合集 项目Github地址 安卓端(Stardust):https://github.com/StardustProject/Stardust 服务器端(Gravel):ht ...

  4. 【Alpha - 五成胜算队】博客列表

    一. 团队Alpha冲刺博客 [Alpha 冲刺] 1/12 [Alpha 冲刺] 2/12 [Alpha 冲刺] 3/12 [Alpha 冲刺] 4/12 [Alpha 冲刺] 5/12 [Alph ...

  5. Alpha项目冲刺_博客链接合集

    组员 学号 林泽宇(队长) 211606317 李涵 211606365 尹海川 211606388 郏敏杰 211606307 何永康 211606362 陈炳旭 211606353 苏宇翔 211 ...

  6. Cron定时任务应用到Thinkphp – 贤生博客

    Cron定时任务应用到Thinkphp 安装crontab: yum install crontabs 关于cron的一些命令: /sbin/service crond start //启动服务 /s ...

  7. 马士兵老师hadoop讲解总结博客地址记录(啊啊啊啊啊,自己没有保存写好的博客...)

    http://www.cnblogs.com/yucongblog/p/6650822.html

  8. 用flask开发个人博客(26)—— 利用config.py配置文件动态的创建不同的Flask对象

    原文:https://blog.csdn.net/hyman_c/article/details/52877704 对配置进行封装的目的是根据不同的使用场景,给flask的app赋予不同的config ...

  9. 『编程题全队』Alpha 阶段冲刺博客Day4

    1.每日站立式会议 1.会议照片 2.昨天已完成的工作统计 孙志威: 1.添加团队界面下的看板容器SlotWidget 2.实现SlotWidgets的动态布局管理 3.实现团队/个人界面之间的切换 ...

随机推荐

  1. 一次性下载CVPR2016的所有文章

    wget --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://www.cv-foun ...

  2. 【uoj264】 NOIP2016—蚯蚓

    http://uoj.ac/problem/264 (题目链接) 题意 n条蚯蚓,时间为m.每单位时间要可以将最长的蚯蚓切成len/2和len-len/2两份,长度为0的蚯蚓不会消失,因为每单位时间所 ...

  3. asp.net使用signalr实现集群集群下面的消息推送

    1.选用Signalr的原因 Signalr内部给我们做了很多封装.当服务器或者浏览器不支持websoket协议的时候就使用长连接方式  不支持长连接再选用轮询的方式获取消息 websoket:与服务 ...

  4. Oracle参数化查询

    Oracle参数化查询默认是根据顺序绑定的 select * from table where name=:p1 and (select id from table2 where name=:p1); ...

  5. POJ3258 River Hopscotch

    地址 别人的代码,自己边界总是控制不好,还不知道哪里错了!思维!这种问题代码越简洁反而越不容易错吧.. #include<stdio.h> #include<algorithm> ...

  6. 浅析基本AI五子棋算法

    五子棋是所有棋类博弈中比较简单的了,这里介绍的也只是一种非常基本的AI策略.其实,包括之前的AI贪吃蛇,感觉这两个AI其实体现的都是一种建模思想,把一个现实中的问题模型化,抽象化,得到其一般特征,再设 ...

  7. RabbitMQ 异常与任务分发

    异常情况处理 上篇最后提到了这个问题, consumer异常退出.queue出错.甚至rabbitMQ崩溃.因为它们都是软件 ,软件都会有bug,这是无法避免的.所以RabbitMQ在设计的时候也想到 ...

  8. [转]virtualenv and virtualenvwrapper

    转自 http://liuzhijun.iteye.com/blog/1872241 virtualenv virtualenv用于创建独立的Python环境,多个Python相互独立,互不影响,它能 ...

  9. JQuery 学习笔记(01)

    JQuery是继prototype之后又一个优秀的Javascript库.它是轻量级的js库 ,它兼容CSS3,还兼容各种浏览器(IE 6.0+, FF 1.5+, Safari 2.0+, Oper ...

  10. 访问cv::Mat中的数据时遇到的指针类型问题

    在用Opencv的时候由于下图原本的图像尺寸是1111*1111,要进行resize,代码如下: cv::Mat img = cv::imread("//Users//apple//td3/ ...