thinkPHP基础学习1

设置前端index.php

1
2
3
4
5
6
7
8
9
10
11
<?php
//确定应用名称home
define('APP_NAME','Home');
//确定应用路径
define('APP_PATH','./Home/');
//开启调试模式
define('APP_DEBUG',true);
//引入核心文件
require './ThinkPHP/ThinkPHP.php';
>

设置后端admin.php

1
2
3
4
5
6
7
8
9
<?php
//确定应用名称home
define('APP_NAME','Admin');
//确定应用路径
define('APP_PATH','./Admin/');
//引入核心文件
require './ThinkPHP/ThinkPHP.php';
>

引入网页模板

位置:Home/Tpl
如何引用模板:在Home/Lib/Action/IndexAction.class.php
注意点:方法名应该与模板名是一样的
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
<?php
header('content-type:text/html;charset=utf-8');
// 本类由系统自动生成,仅供测试用途
class IndexAction extends Action {
public function index(){
$m=new Model('User');
$arr=$m->select();
//var_dump($arr);
$name="诺铖";
$this->assign('data2',$arr[0][user]);
$this->assign('data',$name);
//这是在index.html文件中传入参数
$this->display(); //这里是引用的模板
}
public function show3(){
echo "欢迎你".$_GET['name'];
}
public function show2(){
$this->display(); //这里是引用的模板 在Tpl/index/show2.html 注意的是方法名应该与模板名是一样的
}
}
>

配置文件

位置:Home\Conf\config.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
return array(
//'配置项'=>'配置值'
//修改定界符
'TMPL_L_DELIM'=>'<{',
'TMPL_R_DELIM'=>'}>',
'DB_TYPE'=>'mysql', //设置数据库类型
'DB_HOST'=>'localhost',//设置主机名
'DB_USER'=>'root', //设置用户名
'DB_PWD'=>'', //用户密码
'DB_NAME'=>'thinkphp', //设置数据库名
'DB_PORT'=>'81', //设置端口号
'DB_PREFIX'=>'tp_', //设置表前缀
'SHOW_PAGE_TRACE'=>true,//开启页面trace;
);
?>

总结上述知识点:

(1)首先在配置文件下的连接
‘DB_DSN’=>’mysql://root:123@localhost:81/thinkphp’,
解释:root是用户名 123是用户密码 localhost是访问地址,81是端口号 thinkphp是数据库里的一个库

(2)在action文件类下的调用
$m=M(‘user’); //user是thinkphp里的一个表名
$arr=$m->select(); //选择所有的表里的数据
$this->assign(‘data’,$arr[0][‘user_name’]); //把名字赋值给data这个变量
$this->display();
(3)在tpl文件下的index文件里的index.html调用这个data
hello {$data};

问题

如果$this->assign(‘data’,$arr);//将一个数组给了前台,此时前台如何处理数据呢???

在HTML中

1
2
3
4
<volist name="data" id="vo">
{$vo.id}---------{$vo.username}--------{$vo.sex}<br/>
</volist>
通过volist进行遍历 name="data"是代表赋值的数据,vo是代表一类数据的单个参数。

在PHP中的一些方法(增删改查)

增 $m->add();
删 $m->delect();
改 $m-save();
查 $m->select()

#### 数据的读取 read
$m=M('user');
$arr=$m->select();   //select方法  是查找所有的数据
$arr2=$m->find(2);    //find方法       是查找单条数据
$arr3=$m->getField(字段名); //获取一个具体的字段值,此时找到的是数据库里的第一个字段
例如:
$arr3=$m->where("id=2")->getField('username');
//表示的是从id=2里面获取id=2的username;

#### 数据的创建数据
    $m=M('user');
    $m->字段名=值;
    $m->add();

    相当在数据库里
    insert into user (列名1,列名2) values(值1,值2);

#### 数据的删  除
    $m=M('user');
    $m->delete()
    或者是:$m->where('id=3')->delete();
    删除id=3的数据        

#### 更新数据
    $m=M('user');
    $data['id']=1;
    $data['username']='nuocheng'; 
    $m->save($data);

    相当在数据库里
    update 表名 set 列名=值 where 条件;
Fork me on GitHub