TP框架 增删改
调用控制器里面的方法: {A 方法 (调用类) ; R 方法(直接调用方法)}--只可以调用同一命名空间的方法
{ new 方法} ----可以根据命名空间的地址随意调用方法用处比较强大;
链接数据库 的方法 : {D方法; new方法} D 方法 是 NEW方法的简写【必须在MODEL模块下建一个 数据库的类 】
M方法 不需要建类 可以直接用 返回对象 通过 select() 方法 取出二维数组
同样 new方法 很强大
注意:
1.在配置文件中加入下面代码 会在 显示界面出现 一个工具 帮助我们 发现 错误
1
|
'SHOW_PAGE_TRACE' => true , |
2.在任何一个方法下面添加下面代码 会输出 系统常量 前后带双下划线的常量可以直接用
1
|
var_dump(get_defined_constants( true )); |
下面只是一部分【注意双下划线的地址只是针对于PHP文件而言,在HTML 界面使用的时候 也同样是相对于调用该界面的控制器而言的】
首先选择一张表,对其进行操作:
对数据库操作之前首先要创建模型:
1
|
$n = M( "account" ); |
数据库添加数据:
1、使用数组:
1
2
3
|
1.使用数组 $arr = array ( "uid" => "zhangsan" , "name" => "张三" , "pwd" => "123" ); $n ->add( $arr ); //将数组中的数据添加进数据库。 |
结果:
数据添加成功。
2、AR方式
1
2
3
4
|
$n ->uid= "wangwu" ; $n ->name= "王五" ; $n ->pwd= "123" ; $n ->add(); |
结果:
3、自动收集表单
此种方法需要有一个页面提交表单提交数据:
在同一个命名空间下,打开view文件夹,新建与控制前同名的文件夹,之中在新建同一个名字的html文件。
html文件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<!DOCTYPE html> <html> <head> <meta charset= "UTF-8" > <title></title> </head> <body> <form action= "__ACTION__" method= "post" > <div>账号:<input type= "text" name= "uid" id= "uid" value= "" /></div> <div>姓名:<input type= "text" name= "name" id= "name" value= "" /></div> <div>密码:<input type= "password" name= "pwd" id= "pwd" value= "" /></div> <input type= "submit" value= "添加" /> </form> </body> </html> |
模型代码:
1
2
3
4
5
6
7
8
9
10
11
|
if ( empty ( $_POST )) { $this ->show(); } else { $n = M( "account" ); $n ->create(); //$n->name = ""; //如果不想用提交过来的数据,可以在这里修改 $n ->add(); } |
提交之后:
数据库修改数据:
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
26
27
|
public function xiugai() { $uid = "zhangsan" ; $n = M( "account" ); if ( empty ( $_POST )) { $arr = $n ->find( $uid ); $this ->assign( "shuju" , $arr ); $this ->show(); } else { //1.数组方式 //$n->save($_POST); //提交过来的书记本身就是一个数组 //2.AR方式 //$n->uid=$_POST["uid"]; //$n->name=$_POST["name"]; //$n->pwd=$_POST["pwd"]; //$n->save(); //3.自动收集表单 $n ->create(); $n ->save(); } } |
模型代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<!DOCTYPE html> <html> <head> <meta charset= "UTF-8" > <title></title> </head> <body> <form action= "__ACTION__" method= "post" > <div>账号:<input type= "text" name= "uid" id= "uid" value= "{$shuju.uid}" /></div> <div>姓名:<input type= "text" name= "name" id= "name" value= "{$shuju.name}" /></div> <div>密码:<input type= "password" name= "pwd" id= "pwd" value= "{$shuju.pwd}" /></div> <input type= "submit" value= "添加" /> </form> </body> </html> |
结果:
修改某一项(主键尽量不要修改):
提交之后:
数据库数据删除操作:
1
2
3
4
5
|
public function shanChu() { $n = M( "account" ); $n -> delete ( "zhangsan,wangwu" ); } |
运行之后: