ThinkPHP 多表循环遍历输出

ThinkPHP 多表循环遍历输出
在做项目的时候,经常会遇到分类树输出,有可能是多级,有可能是两级,用得较多的应该是两级菜单树了,比如后台的菜单管理,最近做的一个项目是两个表需要循环出来,一个是分类的,另一个是子分类内容,然后这两个分类要整合到一起做成一个菜单树,然后在另外一个页面进行调用存储。 我的天,逻辑好麻烦,好了,先上代码: ThinkPHP双重循环遍历输出 数据表1 Cat 栏目 数据表2 In 文章 $cat=&nb...

关于thinkphp中GET接受数据

关于thinkphp中GET接受数据
在PHP中,接受GET过来的数据,大多都是需要进行先过滤,然后再进数据库中的,否则没有任何过滤直接插入数据库的话,是很容易受到攻击的,所以在PHP处理留言或者评论之类的项目中,我都是先把特殊之类的字符进行转义,然后在读取的时候,再进行反转义就OK了。 TP是一个非常好的框架系统,近期用得也是很频繁了,而在TP模板中,是可以直接GET接受数据的,{$_GET.id} {$Think.get.id} 这两种方式都没有任何过...

thinkphp全站增删改查的操作

thinkphp全站增删改查的操作
作为一名PHPER,必须要具备最大限度的优化代码的思想,在thinkphp中,因为大多数的 Action 继承的都是 CommonAction 类库,所以关于平常使用的增删改查等操作,完全可以统一的放到 CommonAction.class.php 文件里面,然后在调用的时候就不用写一大堆的代码了。 下面夏日博客整理好的一份全站增删改查操作的方法,如下所示:  //公共查找数据     protected function ...

写了一个简单的thinkphp RBAC权限验证系统

写了一个简单的thinkphp RBAC权限验证系统
目前正在做一个大剧院的项目,本来想要找一个底层的RBAC权限验证系统,只可惜网上的代码有些繁琐,且有些功能使用不上,也想从单位里面的源码上扒个下来,只可惜关联的数据太多,RBAC是由五个表组成的,分别为 think_access,think_node,think_role,think_role_user,think_user,RBAC主要是依赖于这五个表的,这是大多数RBAC权限验证的做法。 我这里是自己写了一个简单的类似于RBAC权限的验证,有会员的...

thinkphp二级菜单循环显示

thinkphp二级菜单循环显示
做了一个thinkphp左侧菜单,代码定义在了公共函数库里面,左侧菜单所有内容都保存在了一个表里面,一级二级使用的是 parentid 进行的关联,在模板里面要把二级菜单全部给循环显示出来,栏目表名为think_class, 表有字段:id,name,parentid,参考代码。 PHP代码如下: $class=M("Class");   $data=$class->select();   $list=array();   foreach($data as ...

Thinkphp中的RBAC权限验证

Thinkphp中的RBAC权限验证
thinkphp中的rbac权限验证是一个thinkphp最底层的核心框架,有了这个底层核心,然后在这个基础上再去开发thinkphp的项目实例就很简单了,最近在做一个剧场的项目,就用到了thinkpp的rbac权限验证,实际上就是需要做一个用户组,用户,权限这样的一个底层功能,每个用户组可以赋予不同的权限来使用后台不同的功能,只可惜没有找到好用的RBAC权限验证的代码,只好自己写了一个简单的,这里先来了解一下RBAC权...

require “./ThinkPHP/ThinkPHP.php” == 无法访问

require “./ThinkPHP/ThinkPHP.php” == 无法访问
一个企业级站点用的是 ThinkPHP 框架设计开发的,最近网页无法打开,入口文件直接显示 require "./ThinkPHP/ThinkPHP.php" == 无法访问 的错误,第一时间想到是否是 ThinkPHP 文件被删除了,因为之前上线的时候没有出现 ThinkPHP 不存在的问题,检查之后,发现一切正常,文件存在。 再一次检查的时候,发现了一个小的细节,就是 ThinkPHP 的文件夹虽然存在,但双击却打不开,这个时候就联想到是否是因为权...

thinkphp 模板中时间戳转换成日期格式 默认当天日期

thinkphp 模板中时间戳转换成日期格式 默认当天日期
在thinkphp模板中需要post一个当前日期,因为在Action里面用的是继承类的方法,所以这个日期一定是要传递过去的才行,所以只能在thinkphp模板里面去定义了,使用的代码如下: 如果有日期输出,即$data.time不为空且不为0,则格式化时间戳,否则默认当前时间戳,并格式化成日期格式。 {$data.time|default=time()|date='Y-m-d',###} 把这个代码嵌套到隐藏域里面即可,打印出来的格式如下: 2016-09-30 如果...

ThinkPHP关于JOIN使用方法详细说明

ThinkPHP关于JOIN使用方法详细说明
ThinkPHP 经常会遇到多表查询,最近的一个项目就是要同时查询四个表,当然 sql 也要使用多表查询了,只是在 where 的时候有些困难,研究了大半天的时间,终于给搞出来了,好了,先看看 ThinkPHP 中关于 JOIN 多表查询的使用吧,其它查询部分一切照旧。 JOIN方法是连贯操作中唯一可以多次调用的方法 分别查询表artist、work、card 、card JOIN 有两种方式:LEFT JOIN(默认使用)与RIGHT JOIN //Left&nbs...

Thinkphp 完整的增删改查 Action

Thinkphp 完整的增删改查 Action
因为项目的需求,写了一个简单的 Action,其中包含了使用率较高的增删改查了,很简单,仅供自己参考吧,因为用的频率较高,所以每次写到增删改查操作的时候都要用到,所以放在博客里面,在需要的时候可以进行拷贝了,呵呵。懒人嘛,什么东西都是写了一遍就不想再写了。 <?php   // 本类由系统自动生成,仅供测试用途   class GradeAction extends CommonAct...

Thinkphp同时读取多个表

Thinkphp同时读取多个表
不管是在 Thinkphp 框架还是在其它框架里面,同时读取多个表已经是很正常的事情了,在上一篇夏日博客已经把添加内容读取分类表以及编辑内容读取分类表的类方法代码贴出来了,这篇文章里面再贴一个显示分类表名称的代码,因为显示的是循环每一条数据库里面的信息,但每一条又有其上级分类的名称,其实在 Thinkphp 中来显示很简单,没有自己手写的哪么复杂,好了先看 Thinkphp select 方法吧,如下所示: ...

Thinkphp获取所属分类名称

Thinkphp获取所属分类名称
使用 Thinkphp 最大的好处就是不用自己去写哪些繁琐的增删改查代码了,在 Thinkphp 里面直接实例化调用就可以了,Thinkphp 开发站点的效果极其的高速,尤其对于经常用到的增删改查,开发就更快速了,在站点的开发应用中,有的时候我们不仅仅要读取一个表,有可能四个表五个表都有其关联性,比如新闻站点,每一条新闻都有其自己的新闻分类,在这个基础之上,去扩展一个大型的新闻站点也是很容易的事情,之前...

thinkphp整合PHPExcel导入Excel数据到mysql(2)

thinkphp整合PHPExcel导入Excel数据到mysql(2)
上一篇文章里面只是仅仅分享两个Thinkphp使用PHPExcel导入Excel数据到mysql的源码,实际上有了实例源码之后,把实例源码整合到自己的项目中是很简单的一件事情了,下面夏日博客再来分享一下自己使用 PHPExcel 批量导入 Excel 的数据到 Mysql 吧,只是分享的代码有点凌乱,因为我的项目涉及到了几个 Thinkphp 的表,要查询余额以及扣款,还有风险等级,风险比例的计算。 function impUser(){ &...

thinkphp整合PHPExcel导入Excel数据到mysql(1)

thinkphp整合PHPExcel导入Excel数据到mysql(1)
需要做一个Excel批量导入mysql的项目,当然第一时间想到的就是 PHPExcel 伟大的类库了,PHPExcel除了xls之类的导入之外,还可以导入word等其它格式的数据,好了,首先的思路就是先进行一条的导入,然后再使用 for 循环进行批量的导入,因为项目的要求是先提供 Excel 的模板供商户下载,然后再填好后进行批量上传导入,模板的要求是少于 100 条的数据,100 条 excel 数据导入,再加上每一条的扣除余额计算,...

容联云通讯Sms短信发送开发实例

容联云通讯Sms短信发送开发实例
从网上查了一下,单位里用的应该是容联云通讯的短信开发平台,一看官网神马的,真的很高大上,短信接口的开发要比移动支付接口的开发神马的整合起来简单多了,档案系统用的是 thinkphp 系统,整合起来短信接口就更不在话下了,直接把类库放置到 thinkphp 目录系统下 /lib/thinkphp/extend/vendor/sms/ccprestSDK.php,这只是一个类库的核心文件,基本上不用去管的,在使用的时候直接实例化里面的 function ...

ThinkPHP find方法 查询一条数据记录

ThinkPHP find方法 查询一条数据记录
find() ThinkPHP find() 方法是和 select() 用法类似的一个方法,不同之处 find() 查询出来的始终只有一条数据,即系统自动加上了 LIMIT 1 限制。 当确认查询的数据记录只能是一条记录时,建议使用 find() 方法查询,如用户登录账号检测: public function chekUser(){         header("Content-Type:text/html; charset=utf-8");  &...

thinkphp简单的上传功能

thinkphp简单的上传功能
最近在做一个 thinkphp 上传导入 excel 表到 mysql 数据库中的实例,用到了 thinkphp 上传功能,我的思路是这样的,先把 excel 表通过上传功能上传到服务器上面,然后再进行导入到 mysql,目前的功能基本上都已经实现了,这是自己使用的一个小小的上传功能,当然还在完善中,等整个完善好了,再把导入 excel 的功能给分享下来,先来看一下 thinkphp 上传文件到服务器的 php 代码吧. //上传方法 &nb...

开启ThinkPHP调试模式

开启ThinkPHP调试模式
本来以为项目有自己的缓存文件,后来发现原来用的是ThinkPHP的缓存模式,怪不得一直调整栏目导致样式不变呢,一个项目的配置文件,这样一看就很明了了,如下文件: <?php   require('../common/config/360safe/360webscan.php');   define('APP_DEBUG',TRUE); //开启调试模式   define('THINK_PATH', "../lib/ThinkPHP/");   define('TMPL_PATH',...

Think PHP url的四种访问方法

Think PHP url的四种访问方法
Thinkphp 一共有四种访模式,但实际上我们常用到的模式也就一种或者两种,其中第一种 PATHINFO 模式和第二种普通模式用得较多,而第三种 REWRITE 模式和 兼容模式则用得较少了,除了配置上比较麻烦之外,对于传递的参数也不太好理解,好了,夏日博客就来简单总结一下这几种模式吧。 1.PATHINFO 模式 http://域名/项目名/入口文件/模块名/方法名/键1/值1/键2/值2。可以进行参数传值,参考写法如下: <...

thinkphp简单的增删改查

thinkphp简单的增删改查
thinkphp经过几个月的学习总算是有个结果了,php100的十几节thinkphp已经学完了,不能说有几个月吧,算是托了十几个月,本来十几节课早就应该学完的,只是自己玩忽职守罢吧,再加上自己的工作,自己的碎事非常的多,所以实际学习也没几天的时间,学习得怎么样呢,只能说一知半解,搞懂了增删改查,至少用 thinkphp 算是得心应手了吧,没有再多深入的去学习,马上又要转到 js 的学习中了。 好了,既然 think...