tp5
appleคิดถึง
在学习,在分享,在路上
展开
-
tp5/6 查询MySQL某字段逗号分隔的数字与给定数组里的多个值匹配
使用 SQL 的 FIND_IN_SET 函数配合循环构造动态查询条件原创 2024-07-27 08:46:30 · 26 阅读 · 0 评论 -
tp5 A关联B,B关联C,获取下面有A数据的全部C数据
查询获取下面有商品数据的 并且是正常状态的 所有一级分类原创 2024-05-15 16:25:25 · 221 阅读 · 0 评论 -
tp5 一对多关联,使用被关联表条件查询结果 限制 主表查询结果
使用示例:筛选商家服务范围包含当前选择的小区的商家。原创 2024-04-13 15:56:56 · 448 阅读 · 0 评论 -
TP5使用group报错:1055 Expression #1 of SELECT list is not in GROUP
group报错原创 2024-04-13 15:29:11 · 427 阅读 · 0 评论 -
tp5接收参数字符转义问题
2,接口文件里面,可使用函数html_entity_decode()、htmlspecialchars_decode()1,模板文件里面,如果不想被转义,那只需要在变量后面加上raw方法即可,如:{$param|raw}原创 2023-10-08 18:17:40 · 361 阅读 · 0 评论 -
fastadmin with 和 filed 合用导致field失效
记录:fastadmin tp5 with 和 filed 合用导致field失效问题。原创 2022-09-08 11:56:11 · 556 阅读 · 0 评论 -
tp5 闭包查询
记录:闭包查询使用示例示例1list($where, $sort, $order, $offset, $limit) = $this->buildparams();$params = [];if(input('user_loan_id')){ $params = ['user_loan_id'=>input('user_loan_id')];}$nowMonthbeg = date('Y-m-01');$list = $this->model ->原创 2022-04-27 17:22:29 · 1192 阅读 · 0 评论 -
TP5.1导出指定的多个日期的数据记录
记录:使用laydate实现指定多个日期,并传到后台,后台获取这些日期的打卡记录并统计个人的打卡情况出勤率及部门出勤率HTml代码:<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>layui</title> <meta name="renderer" content="webkit"> <meta http-e原创 2021-03-26 16:29:03 · 263 阅读 · 0 评论 -
tp5.1模型的搜索器
记录:文档定义:搜索器的作用是用于封装字段(或者搜索标识)的查询条件表达式,一个搜索器对应一个特殊的方法(该方法必须是public类型)。方法命名规范为:searchFieldNameAttr:FieldName为数据表字段的驼峰转换 搜索器仅在调用withSearch方法的时候触发。 若传入的查询字段未定义对应的搜索器,则自动过滤掉此字段的查询示例:1,模型中定义搜索器,username字段和create_time字段<?phpnamespace app\common原创 2020-07-08 16:02:56 · 706 阅读 · 0 评论 -
tp5.1/tp6 中间件的使用
记录:1,中间件的作用:中间件主要用于拦截或过滤应用的HTTP请求,并进行必要的业务处理。2,注意:中间件的入口执行方法必须是handle方法,而且第一个参数是Request对象,第二个参数是一个闭包 中间件handle方法的返回值必须是一个Response对象。 3,创建中间件:这个指令会application/http/middleware目录下面生成一个Check中间件。php think make:middleware Check<?phpnames...原创 2020-07-06 13:56:06 · 1349 阅读 · 0 评论 -
TP5.1记录
1,查询构造器的数组多字段批量查询对比(对于纯等于的数组条件查询没改变),例如://TP5.0model('user')->where(['type'=>2,'username'=>['like','sumer%']])->select()->toArray();//TP5.1model('user')->where([['type','=',2],['username','like','sumer%']])->select()->toArra原创 2020-06-30 17:33:06 · 306 阅读 · 0 评论 -
TP5/TP6常用命令操作
1,创建一个模块命令://tp5php think build --module test//tp6 php think build test2,创建一个控制器test:php think make:controller app\admin\controller\test3,原创 2020-06-28 14:48:18 · 1233 阅读 · 0 评论 -
tp5在模板中一对多关联获取某个字段并展示
(仅此记录)案例:支付号表与订单表是一对多的关系,现需在模板渲染时,关联获取订单表中的产品IP字段,并将其展示出来:1,模型设置关联//设置支付号关联多个订单public function orderinfoip(){ return $this->hasMany('order','paysn','paysn')->field('ip');}2,模板中...原创 2020-05-07 11:22:41 · 1180 阅读 · 0 评论 -
tp5 判断前台是否登录
记录一下:private function is_front_login(){ $uid = session('uid'); if(!$uid) { return false; } $rowdata = model('user')->where(['uid'=>$uid])->find...原创 2020-03-12 13:32:18 · 891 阅读 · 0 评论 -
tp5 将excel表格内容录入数据表
接上篇“TP5 实现数据生成excel并下载”文章,实现将图示excel表格数据转入数据表中:php代码: public function addexcelOp() { //获取上传文件信息 $file = request()->file('addexcel'); //1000b=1kb 大小不超过10mb ...原创 2020-03-10 15:19:35 · 274 阅读 · 0 评论 -
tp5小技巧
1,html中若一部分代码暂时不用,直接注释掉,F12情况下会被看到,此时可用php注释代码方式,例如:<?php /*<div class="about_third clearfloat"> <h3 class=""><img src="__PUBLIC__/img/about_third.png" alt="">联系我们</h3&...原创 2020-03-09 10:21:15 · 260 阅读 · 0 评论 -
tp5 跨控制器调用
记录一下:1,同一个controller文件夹下,示例:2,不同一个controller文件夹下,示例:原创 2020-03-07 16:00:08 · 173 阅读 · 0 评论 -
tp5 非debug模式下,记录网站错误日志
TP5 非debug模式下,若有程序发生错误,并将其记录在错误日志里面,管理后台可及时发现并对其程序进行补救:一、了解tp5目录结构,修改处理错误文件 Handle.php1,文件位置:\thinkphp\library\think\exception\Handle.php2,找到 convertExceptionToResponse()方法,在else{}中增加以下代码: ...原创 2020-03-07 11:01:19 · 1097 阅读 · 0 评论 -
解决tp5 No input file specified.问题
记录一下:问题:No input file specified.原因:.htaccess文件中的RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]在默认情况下会导致No input file specified.解决办法:修改成RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1] ,重启服务器即可。注...原创 2019-12-30 11:38:02 · 488 阅读 · 0 评论 -
tp5 页面无刷搜索加分页
记录一下:tp5分页加搜索实现页面无刷方法index.html代码示例:<!--搜索--><form class="layui-form serachform" method="post" action="{:url('indexSearch')}"> <div class="layui-form-item"> <div...原创 2019-12-30 11:28:49 · 276 阅读 · 0 评论 -
tp5 控制日志写入及日志自动清理
项目运行时间长了,就会发现日志文件加占用的空间特别大,现就控制日志写入和日志自动清理两种方式解决此问题:一,控制日志写入TP5手册说明:系统并未提供关闭日志的方法,但有两种方式可以关闭日志的写入方式一:设置日志类型为test,即可不写入任何日志。 'log' => [ // 日志记录方式,内置 file socke...原创 2019-12-22 10:51:34 · 2466 阅读 · 0 评论 -
[2002] PDOException in Connection.php line 295
错误提示:初次遇到这样的错误,最近并没有更改项目的配置信息,但今天却链接数据库报错解决办法:重启服务器,重启配置即可原创 2019-12-22 09:54:03 · 3819 阅读 · 5 评论 -
tp5 union查询加分页加补充数据
两张相似的数据表进行联合查询,并进行分页处理,并对分页后的数据增加数据元素:代码示例:$a = model('orderTemporary')->field(categoryid,uid,productname,enproductname,enorderdesc,orderdesc,status,createtime,orderamount')->where(['status...原创 2019-12-18 11:38:33 · 480 阅读 · 0 评论 -
解决TP5.0 网站图形验证码不显示
原因:网站做了多语言切换,当切换未英文语言时,图形验证码不能正常显示。解决办法:这个是TP5本身存在的一个bug,官方也给出了解决办法:在获取验证码之前清除一下缓存(ob_clean())即可。class CaptchaController{ public function index($id = "") { //来路验证 if (!...原创 2019-11-25 13:35:38 · 1033 阅读 · 1 评论 -
TP5中 解决save操作在foreach中只保存最后一条数据
正常情况下,tp5保存数据到数据库,示例:model('article')->allowField(true)->isUpdate(false)->save($data);foreach循环中,保存数据到数据库,应为:foreach ($dataArr as $data) { model('article')->allowField(true)-&g...原创 2019-11-14 11:46:24 · 1245 阅读 · 2 评论 -
解决tp5项目部署在nginx环境上404问题(伪静态)
问题一: tp5项目在apache中运行一切正常,但部署在nginx环境中,页面打不开,总是提示404报错:解决办法:在宝塔网站->设置->配置文件中(或nginx.conf里)添加下面代码: location / { index index.html index.htm index.php; #autoindex on; if (!-e...原创 2019-03-13 16:42:04 · 6614 阅读 · 0 评论 -
tp5 封装助手函数之redis()
1, 先在创建拓展文件extend/module/Redis.php/** * Created by PhpStorm. * User: Mac * Date: 2018/8/20 * Time: 下午1:52 */namespace module; class Redis extends \Redis { public static function ...原创 2019-03-16 16:38:47 · 585 阅读 · 0 评论 -
tp5 封装助手函数之mongo()
1, 先在创建拓展文件extend/module/mongoDB.php<?php/** * Created by PhpStorm. * User: Mac * Date: 2018/8/20 * Time: 下午1:52 */ namespace module; use think\Db; class mongoDB { public s...转载 2019-03-16 16:21:48 · 426 阅读 · 1 评论 -
tp5灵活拼接使用where查询条件
常用的tp5多条件查询拼接1,Where 条件表达式格式为:$map['字段名'] = array('表达式', '操作条件');2,以查询user表为例$User = model("User"); // 实例化User对象方法1:$User->where('type=1 AND status=1')->select(); 方法2:$User......原创 2019-02-16 15:24:40 · 5447 阅读 · 2 评论 -
tp5获取器用法
获取器的作用是在获取数据的字段值后自动进行处理,相当的方便.代码示例:MODEL层代码://获取器的作用是在获取数据的字段值后自动进行处理, $data必须得是数据集,不能用toArray()转化public function getStatusTextAttr($value,$data){ $KefuStatusName= [0=>'',1=>'禁用',2=>...原创 2018-12-07 09:33:04 · 1929 阅读 · 0 评论 -
tp5 save()保存后,获取自增ID,获取关联表中的某值
用过tp5的小伙伴们都知道用save方法新增数据返回的是写入的记录数。但是项目中常常遇到在保存成功数据后也要获取这条数据的主键id,以方便存到其他表里用作关联需要,下面是代码示例://向user表中保存一条数据$data = [ 'username'=>'ceshi', 'password'=>'123', 'typeid'=>'1',];...原创 2018-12-14 10:42:58 · 13279 阅读 · 0 评论 -
TP5 一对一关联
1, 定义一对一关联hasOne()例如:Article 模型中 关联category 模型 //关联分类一对一 //hasOne(‘关联模型名’,‘外键名’,‘主键名’,[‘模型别名定义’],‘join类型’); public function category(){ return $this->hasOne('category', 'categoryid', '...原创 2019-05-31 16:00:28 · 1339 阅读 · 0 评论 -
TP5 一对多关联
1, 定义一对多关联hasMany()例如:category 模型中 关联article模型//分类关联文章一对多public function article() { return $this->hasMany('Article', 'categoryid', 'categoryid')->field('id,title_name,status');}2,...原创 2019-05-31 17:49:48 · 2171 阅读 · 0 评论 -
TP5 设置自定义404,错误提示页面
1, 更改tp5 config.php配置 // +---------------------------------------------------------------------- // | 异常及错误设置 // +----------------------------------------------------------------------...原创 2019-06-06 14:37:20 · 4637 阅读 · 0 评论 -
tp5 下载.apk包文件
function load(){ $file = '../file/aa.apk'; if (file_exists($file)) { header('Content-Description: File Transfer'); header('Content-Type: application/vnd.android.package-archive'); header('...翻译 2019-06-06 14:44:17 · 1826 阅读 · 0 评论 -
TP5 关联统计
注:关联统计仅针对一对多或者多对多的关联关系例如:category 模型中 关联article模型//分类关联文章一对多public function article() { return $this->hasMany('Article', 'categoryid', 'categoryid')->field('id,title_name,status');...原创 2019-06-01 11:28:14 · 2630 阅读 · 0 评论 -
tp5 配置mongodb
若使用的mongodb数据库不是admin权限(即添加的用户)时, 会连接失败, 权限不足, 需更改tp5拓展文件文件位置:\vendor\topthink\think-mongo\src\Connection.php 152行在这段代码的最后加上 ."/".$this->dbName;//更改前$host = 'mongodb://' . ($config['use...原创 2019-06-13 14:52:36 · 948 阅读 · 0 评论 -
TP5 运算验证码
TP5 实现运算验证码1,直接修改topthink-Captcha中的验证码类captcha.php。<?php// +----------------------------------------------------------------------// | ThinkPHP [ WE CAN DO IT JUST THINK ]// +-----------------...原创 2019-09-12 10:28:42 · 1163 阅读 · 0 评论 -
tp5 each()与分页
tp5 each()与分页,public function each(){ $uid = input('uid'); $groupList = model('grouping')->where(['uid' => $uid, 'elite' => 9])->field('groupid,groupname')->paginate(1, false, ['...原创 2019-09-20 15:37:51 · 1924 阅读 · 0 评论 -
tp5 分页之无刷新页面渲染
正常情况下,tp5分页渲染出来的页面,切换页码也会切换(刷新)页面,现记录无刷新页面渲染方式:控制器代码示例:public function aaOp(){ $rslist = model('article')->order('tid desc')->paginate(10); //分页 $pagehtml = $rslist->render(); $this-&...原创 2019-09-21 14:27:46 · 938 阅读 · 0 评论