php通道,此文件时通道口文件index.php

此文件时入口文件index.php

此文件时入口文件index.php

//定义一下ThinkPHP框架存放的路径

define('THINK_PATH','./ThinkPHP/');

//定义当前的项目的名称,此处的项目可理解为模块home理解为前台部分

define('APP_NAME','protal');

//定义项目的路径

define('APP_PATH','./protal/');

define('APP_DEBUG', true);

require THINK_PATH.'ThinkPHP.php';

conf/config.php

//包含定义配置数据库连接的配置文件

$dbConf=include './config.inc.php';

//定义项目本身常规配置

$Conf=array(

//'配置项'=>'配置值'

'URL_MODEL'=>2,//2表示是URL重写模式

);

return array_merge($dbConf,$Conf);

?>

与入口文件同级的有一个配置文件config.inc.php

return array(

//'配置项'=>'配置值'

'DB_TYPE'=>'mysql',

'DB_HOST'=>'localhost',

//数据库名

'DB_NAME'=>'think',

//数据库用户

'DB_USER'=>'root',

//数据库密码

'DB_PWD'=>'',

//数据库端口

'DB_PORT'=>'3306',

//表前缀

'DB_PREFIX'=>'t_',

)

?>

控制器IndexAction.class.php

// 本类由系统自动生成,仅供测试用途

class IndexAction extends Action {

public function index(){

header("Content-Type:text/html; charset=utf-8");

$this->display("reg");

}

function add(){

if(md5($_POST['verify'])!=$_SESSION['verify']){

$this->error("验证码错误");

}

//实例化自定义模型 M('User')实例化基础模型

$user=D("User");

if($user->create()){

//执行插入操作,执行成功后,返回新插入的数据库的ID

if($user->add()){

$this->success("注册成功");

}else{

$this->error("注册失败");

}

}else{

//把错误信息提示给用户看

$this->error($user->getError());

}

}

//生成图片验证码

function verify(){

/**

* 在thinkPHP中如何实现验证码

*

* ThinkPHP已经为我们提供了图像处理的类库ThinkPHP\Extend\...

*

* 如何导入类库?

* 导入类库用"import(文件路径)来导入,但是注意文件的路径中的\要替换成 . 号"

* 1)导入系统的类库 import(从library开始算起) import('ORG.Util.Image')注意大小写

* 2)导入项目类库 import("@.ORG.Image") 我们需要在我恩的项目的Lib目录中存放

*/

//导入图形处理类库

import("ORG.Util.Image");

//import("@.ORG.Image");

//生成图形验证码

/*

length:验证码的长度,默认为4位数

mode:验证字符串的类型,默认为数字,其他支持类型有0 字母 1 数字 2 大写字母 3 小写字母 4中文 5混合(去掉了容易混淆的字符oOLl和数字01)

type:验证码的图片类型,默认为png

width:验证码的宽度,默认会自动根据验证码长度自动计算

height:验证码的高度,默认为22

verifyName:验证码的SESSION记录名称,默认为verify

*/

//实现英文验证码

image::buildImageVerify(4,1,'gif',60,22,'verify');

//实现中文验证码

//image::GBVerify();

}

}

模型UserModel.class.php

class UserModel extends Model{

//自动验证

protected $_validate=array(

//每个字段的详细验证内容

array("username","require","用户名不能为空"),

array("username","checkLength","用户名长度不符合要求",0,'callback'),

array("password","require","密码不能为空"),

array("password","checkLength","密码长度的要求是5~15位之间",0,'callback'),

array("password","repassword","两次密码输入不一致",0,'confirm'),

array("qq","require","qq必须填写"),

//array("cdate","require","时间不能为空",callback),

);

//自动填充

protected $_auto=array(

array("password","md5",3,'function'),

array("cdate","shijian",3,'callback'),

array("dizhi","getIp",3,'callback'),

);

//自定义验证方法,来验证用户名的长度是否合法

//$date形参 可以写成任意如 $AA $bb

function checkLength($data){

//$data里存放的就是要验证的用户输入的字符串

if(strlen($data)<5||strlen($data)>15){

return false;

}else{

return true;

}

}

//返回访问者的IP地址

function getIp(){

return $_SERVER['REMOTE_ADDR'];

}

function shijian(){

return date("Y-m-d H:i:s");

}

}

模板reg.html

注册

请认真填写以下注册信息

用户名:
密码:
确认密码:
QQ:
验证码:

验证码看不清楚

function show(){

document.getElementById("verify").src="__URL__/verify/random"+Math.random();

}

如果还有不明白的地方,可以给我留言,我会详细解答您留下的问题,谢谢关注

目录结构如下

TP

--------ThinkPHP  文件夹

--------protal.php  这个文件叫protal.php

当运行protal.php时,会出现ThinkPHP的欢迎页面,证明已经配置成功,同时目录结果会发生变化

此时的目录为

TP

--------ThinkPHP  文件夹

--------protal.php  入口文件(上边那个文件)

--------protal 文件夹

生成的项目目录结构和系统目录类似,包括:

Common

项目公共文件目录,一般放置项目的公共函数

Conf

项目配置目录,项目所有的配置文件都放在这里

Lang

项目语言包目录(可选 如果不需要多语言支持 可删除)

Lib

项目类库目录,通常包括Action和Model子目录

Tpl

项目模板目录,支持模板主题

Runtime

项目运行时目录,包括Cache(模板缓存)、Temp(数据缓存)、Data(数据目录)和Logs(日志文件)子目录,如果存在分组的话,则首先是分组目录。

mysql> SELECT FROM_UNIXTIME(875996580);

-> '1997-10-04 22:23:00'

mysql> SELECT UNIXTIME_TIMESTAMP('1997-10-04 22:23:00');

-> '875996580'

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值