PHP之ThinkPHP框架会话

    网页会话即是实现页面跳转及数据传递,在web开发中,Cookie和Session的使用是极其重要的,GET和POST是最常使用的页面间数据传递的方法,相对于PHP脚本基础,在ThinkPHP中对网页会话都进行了上层封装。

脚本的会话基础:

页面跳转:

在控制器或模板中要做页面跳转时使用

(("Location: ../控制器/方法"));

超链接:

在视图的HTML里如果要超链接到本地的控制器则需要使用

href="{:url('控制器/方法')}"

JS传递参数:

利用其传递GET数据到后台,实现数据交互

window.location.href="../控制器/方法?u_id="+u_id+"&u_state=停用";

GET和POST的数据获取:

=Request:: "当前域名:".-> "获取 GET 或者 POST 参数值:".->param("name"); dump(input());param() 打印所有获取的值 =-> "当前的请求方法:". (=="GET" ->get("getn")."
" dump(-> (=="POST" ->post("postn")."
" dump(-> }

Session的基本使用:

Session::set('name1','thinkphp' (Session::has("name1" "--------------------------" Session::get('name1' Session:: Session::set("n2.nn1","aa1" Session::set("n2.nn2","aa2" Session::get("n2.nn1" dump(Session::get("n2" }

Cookie的基本使用:

Cookie::set('name1','value',3600 Cookie::set('name',[1,2,3 (Cookie::has("name" dump(Cookie::get("name" Cookie::delete('name' Cookie:: }

利用Session的登入判断:

      Session的值是保存在WEB服务器中的,利用其来做当次的登入判断是常用的一种方式,首先应该在用户名密码匹配成功后进行Session的写操作,接下来是验证Session内容,进行登入判断。

     本来觉得验证写在控制器中就好了,结果发现一旦程序庞大后每个控制器中的方法就多了,因为每个方法就代表着一个入口,所以这是不可取的。如果把Session判断写在模板的构造函数中,因为模板表示这一个数据库的数据表且基本上控制器中的方法都会设计到数据表的操作,这样整体下来很好的实现了登入验证功能。

先导入必要模块:

think\Session;

模板的构造函数编写:

(!Session::get("username" (("Location: ../控制器/登入的方法名" }

注意:

构造函数需要与类同名,经过测试发现PHP自带的万能类构造方法__construct()是不能使用的

相关文章

(1)创建数据表: CREATE TABLE IF NOT EXISTS `think_form` ...
组合查询的主体还是采用数组方式查询,只是加入了一些特殊的...
(1)创建模版:/App/Home/View/Form/edit.html   <FORM m...
自定义配置文件user.php: <?php return array(    \'se...
在一些成熟的CMS系统中,后台一般都包含一个配置中心(如织梦...
废话不多说先上图预览下,即本博客的分页; 这个分页类是在...