您的位置:首页 > 编程语言 > PHP开发

ThinkPhp框架:分页查询和补充框架知识

2017-08-10 14:23 337 查看
 

一、一个条件的查询数据

查询数据自然是先要显示出数据,然后根据条件进行查询数据

(1)显示出表的数据

这个方法我还是写在了HomeController.class控制器文件中

(1.1)写了一个方法shouye()

(1.2)方法写完了之后,下面就是写显示页面了,这个名字和方法名一致

这里我们用表格来显示一下数据

下面运行看下效果:注意地址栏的书写:http://localhost/tp/index.php/Home/Home/shouye



(2)添加查询条件

(2.1)这样的话就要添加查询的文本框和查询按钮了,我们添加在表的前面

这里用表单来写,因为提交嘛,所以用表单进行写

看下显示效果



(2.2)显示出来之后,就是后面的处理页面了

这个查询和添加、修改的逻辑处理方式还不一样,这里就不用if判断了

这样运行一下,然后查看一下结果

查询一下“回”的信息,可以实现这个查询



(2.3)可以在这个查询中添加分页,也就是分页的显示

1.这里我们引用一下以前写过的page分页的类,先把这个page的类放到自己的模块下面,我放在了这里



打开这个类文件,修改一下命名空间如下所示:



然后关闭就可以了。

2.在shouye()方法中调用Page类

  2.1首先要调用这个page类

  2.2这个类要有两个参数:分页的总条数,显示的条数

  2.3总条数:查询也是要显示总条数

  2.4在limit这里要对源文件,进行修改

  这样的话会多着个limit,那么在page.class.php源文件中删除就可以



  2.5查询所有条件时加上这个limit($page->limit)方法

  2.6注入变量(将分页的信息显示信息注入)

看下总的这个shouye()的方法,上面的综合

  2.7在显示页面,显示这个变量

看先运行结果,是有了分页信息



但是这样有个缺陷,就是在查询一个条件时,第一条是显示的总条数是正确的额,但是后面的是错误的,那么就是要修改代码

注意:将数据的传输方式修改(post修改为get)

3.查询的文本框显示默认值

这里在条件恒成立下,定义一个name值为空,然后在注入变量

在显示页面的文本框的中,添加value值是前面注入的变量

注意:

1.看下完整的php页面的代码

2.显示页面的整体内容

这样总的效果就已经结束了

进行查询后,文本框显示查询的名字,显示的条数也是会变换的



二、数据取值方式

1.写一个方法,来进行数据的传值差别:正常的GET方式取值

在浏览器的地址栏地址中输入:

(1)后面是:?名称="值"

1.没有传值的话是空
http://localhost/tp/index.php/Home/Home/testget
输出就是空的:



 

2.有值的传值
http://localhost/tp/index.php/Home/Home/testget?name=%22%E4%BD%A0%E5%A5%BD%22
这样就会输出:你好



(2)后面是路径的方式:/名称/值

地址栏中输入:
http://localhost/tp/index.php/Home/Home/testget/name/qqqqqq
输出结果



注意:传多值就是/名字/值/名字/值

2.给方法赋值的方式取值

 

三、session方法和cookie方法

(1)session方法

1.默认情况下,初始化之后系统会自动启动session,如果不希望系统自动启动session的话,可以设置
SESSION_AUTO_START
为false,例如:

关闭自动启动后可以项目的公共文件或者在控制器中通过手动调用
session_start
或者
session('[start]')
启动session。

2.session赋值

3.session判断

4.session管理

(2)cookie方法

Cookie设置

四、模板(三元运算)

模板可以支持三元运算符

注意:三元运算符中暂时不支持点语法。

 

五、AJAX返回

要使用ajax就要引用jQuery了,我们把jQuery拿进来

(1)我放到了Public文件夹下,新建一个js文件夹下



(2)然后就是在显示的页面调出这个js文件

(3)看下这个文件是不是引入了

在浏览器的地址栏中输入:http://localhost/tp/index.php/Home/Home/shouye

查看源代码查看是不是引入了



点开之后要是能够出现就是引入成功了

(4)在控制器中写一个方法chuli,让ajax返回这个方法

(5)就要写ajax了

(6)在chuli方法页面就要写返回值了

 注意:如果是JSON/JSONP格式,会自动编码成JSON字符串,如果是XML方式,会自动编码成XML字符串,如果是EVAL方式的话,只会输出字符串data数据。 

完整的显示页面的代码:

看下效果:



 

也可以是关联数组的数据,就不写了

 

六、跳转和重定向

(1)页面跳转

使用方法很简单

注意:success和error方法的第一个参数表示提示信息,第二个参数表示跳转地址,第三个参数是跳转时间(单位为秒)

注意:跳转地址是可选的,success方法的默认跳转地址是
$_SERVER["HTTP_REFERER"]
,error方法的默认跳转地址是
javascript:history.back(-1);
。  

 

 

这就是tp框架的另外的一些知识和操作
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: