ThinkPhp学习06

原文:ThinkPhp学习06

一、简单学习修改用户信息模块

1、编写UserAction.class.php

 1 <?php
 2
 3     class UserAction extends Action{
 4         public function index(){
 5             $m=M('User');
 6             $arr=$m->select();
 7             $this->assign('data',$arr);
 8             $this->display();
 9         }
10         public function del(){
11             $m=M('User');
12             $id=$_GET['id'];
13             $count=$m->delete($id);  //删除获取到的id,成功返回执行条数,失败为0
14             if($count>0){
15                 $this->success("删除成功!");  //提示删除成功后返回
16             }else{
17                 $this->error("删除失败!");        //提示删除失败后返回
18             }
19         }
20
21         public function modify(){
22             $m=M('User');
23             $id=$_GET['id'];               //获取传入的id值
24             $arr=$m->find($id);
25             $this->assign('data',$arr);
26             $this->display();
27         }
28
29
30     }
31
32 ?>

View Code

 2、UserAction对应index方法的页面

 1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 2 <html>
 3 <head>
 4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 5 <title>Insert title here</title>
 6 </head>
 7 <body>
 8 <table border='1' width='400px' align='center'>
 9     <tr>
10         <th>Id</th>
11         <th>User</th>
12         <th>sex</th>
13         <th>操作</th>
14     </tr>
15     <volist name='data' id='vo'>
16        <tr>
17                <td><{$vo.id}></td>
18                <td><{$vo.username}></td>
19                <td><{$vo.sex}></td>
20                <td><a href='/thinkphp/test/index.php/User/del/id/<{$vo.id}>'>删除</a><a href='/thinkphp/test/index.php/User/modify/id/<{$vo.id}>'>修改</a></td>
21        </tr>
22
23     </volist>
24 </table>
25 </body>
26 </html>

View Code

3、对应修改用户信息的页面

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script>
    window.onload=function(){
            var sex=<{$data.sex}>;   //根据传入的数值来选中性别
            if(sex==1){
                document.getElementsByName('sex')[0].checked="checked";
                }
            else{
                document.getElementsByName('sex')[1].checked="checked";
                }
        }

</script>
<title>Insert title here</title>
</head>
<body>
    <form action="">
    姓名:<input type="text" name="username" value="<{$data.username}>" /><br/>
    性别:男<input type="radio" name="sex" value="1" />女<input type="radio" name="sex" value="0" /><br/>
    <input type="submit" value="提交"  />

    </form>
</body>
</html>

View Code

 

时间: 2025-01-20 21:09:33

ThinkPhp学习06的相关文章

thinkphp学习笔记9—自动加载

原文:thinkphp学习笔记9-自动加载 1.命名空间自动加载 在3.2版本中不需要手动加载类库文件,可以很方便的完成自动加载. 系统可以根据类的命名空间自动定位到类库文件,例如定义了一个类Org\Util\Auth类: namespace Org\Util; class Auth { } 保存到ThinkPHP/Library/Org/Util/Auth.class.php 这样我们就可以直接实例化了, new \Org\Util\Auth(); 实例化之后系统会自动加载 ThinkPHP/

thinkphp学习笔记10—看不懂的路由规则

原文:thinkphp学习笔记10-看不懂的路由规则 路由这部分貌似在实际工作中没有怎么设计过,只是在用默认的设置,在手册里面看到部分,艰涩难懂.   1.路由定义 要使用路由功能需要支持PATH_INFO,PATH_INFO是什么呢?手册中提到"要使用路由功能,前提是你的URL支持PATH_INFO(或者兼容URL模式也可以,采用普通URL模式的情况下不支持路由功能)," , url支持path_info,不是apache要支持path_info么,度娘讲的还算清楚一点,见下文: p

thinkphp学习笔记6—url模式

原文:thinkphp学习笔记6-url模式 入口文件是应用的唯一入口,因为可以多入口,每个应用可以对应一个入口文件,系统会从rul参数中解析当前请求的模块,控制器,操作.ThinkPHP是区分大小写的,考虑到linux是区分大小写的,所以在ThinkPHP中模块,控制器,模型等都是区分大小写的,并且使用驼峰命名规则. 如果我们直接访问入口文件index.php,url中没有给出模块,控制器,操作,系统会默认访问Home模块下的Index控制器下的index操作,因此下面的两种访问方法得到的结果

thinkphp学习笔记4—眼花缭乱的配置

原文:thinkphp学习笔记4-眼花缭乱的配置   1.配置类别 ThinkPHP提供了灵活的全局配置功能,ThinkPHP会依次加载管理配置>项目配置>调试配置>分组配置>扩展配置>动态配置,所以后面的配置权限要大于前面的,因为后面的配置会覆盖前面同名配置,同事会生辰配置缓存文件无需重复解析,减小开销. 惯例配置:在惯例配置内对大多数常用参数进行默认配置,因为惯例配置最先加载,优先级别最低,如果不需要做特殊配置的话,完全可以保持默认值,惯例配置位于ThinkPHP/Con

ThinkPhp学习02

原文:ThinkPhp学习02 一.什么是MVC                M -Model 编写model类 对数据进行操作 V -View  编写html文件,页面呈现 C -Controller 编写类文件(UserAction.class.php)二.ThinkPHP的MVC特点        三.ThinkPHP的MVC对应的目录    M 项目目录/应用目录/Lib/Model V 项目目录/应用目录/Tpl C 项目目录/应用目录/Lib/Action四.url访问C     

thinkphp学习笔记5—模块化设计

原文:thinkphp学习笔记5-模块化设计 1.模块结构 完整的ThinkPHP用用围绕模块/控制器/操作设计,并支持多个入口文件盒多级控制.ThinkPHP默认PATHINFO模式,如下: http://serverName/index.php(或者其他应用入口文件)/模块/控制器/操作/[参数名/参数值...] 应用:由同一个入口文件访问的项目称为一个应用,在完整版的代码中就是Application 模块:一个应用下面可以包含多个模块,每个模块对应独立的目录,在完整版的代码中有Admin,

thinkphp-在跟着后盾网ThinkPHP学习时Widget拓展库出现问题

问题描述 在跟着后盾网ThinkPHP学习时Widget拓展库出现问题 这里是试验的代码,然后又一个right.html中运用了W方法 然后网页显示正常 然后让$data return出来 就出现问题了 所有的css,js都用不了了,而且报错,不知道为什么会出现这种问题,return那一截也查了TP手册,但是没发现什么不妥,但是就是在这出现了这种问题,求大神解答

thinkphp学习笔记8—命名空间

原文:thinkphp学习笔记8-命名空间 新版本(3.2)中采用命名空间的方式定义和加载类库文件,解决多个模块之间的冲突问题,并实现了更加高效的自动加载机制. 需要给类库定义所在的命名空间,命名空间的路径和类库文件的目录一致,就可以实现类的自动加载,例如Org\Util\File类的定义为 namespace Org\Util; class File { } 其所在的路径是ThinkPHP/Library/Org/Util/File.class.php,我们实例化该类写法如下: $class

thinkphp学习笔记3—项目编译和调试模式

原文:thinkphp学习笔记3-项目编译和调试模式 1.项目编译 在章节2.4项目编译中作者讲到使用thinkphp的项目在第一次运行的时候会吧核心需要加载的文件去掉空白和注释合并到一个文件中编译并缓存,第二次运行时直接载入编译缓存,这样省去一些IO开销,加快执行速度.并且在3.0以上的版本中海做了一些优化: 1.合并和兴编译缓存和项目编译缓存,不再生成两个缓存文件 2.直接对本地环境生成设置和常量定义减少环境判断 3.编译缓存可以直接替换框架入口甚至项目入口,甚至脱离框架独立运行 4.通过参