找到
3
篇与
教程
相关的结果
-
更换Typecho后台博客头像链接的方法 📱 Typecho Joe主题头像更换教程 - 手机友好版 专为手机用户设计 | 代码块直接复制 | 操作步骤清晰方法一:修改全局配置(推荐) 操作步骤: 打开网站根目录 找到 config.inc.php 文件 在文件开头添加以下代码: define('__TYPECHO_GRAVATAR_PREFIX__', 'https://cravatar.cn/avatar/');📋 复制代码: define('__TYPECHO_GRAVATAR_PREFIX__', 'https://cravatar.cn/avatar/');方法二:修改主题文件 操作步骤: 进入主题目录:/usr/themes/joe/ 打开 common.php 文件 找到以下代码(约120行): $url = $isSecure ? 'https://secure.gravatar.com' : 'http://www.gravatar.com'; 替换为: $url = 'https://cravatar.cn/avatar/'; 📋 复制替换代码: $url = 'https://cravatar.cn/avatar/';备选镜像地址 📋 腾讯镜像: define('__TYPECHO_GRAVATAR_PREFIX__', 'https://gravatar.loli.net/avatar/');📋 V2EX镜像: define('__TYPECHO_GRAVATAR_PREFIX__', 'https://cdn.v2ex.com/gravatar/');常见问题解决 📋 解决方案: 1. 修改后不生效 → 清除浏览器缓存 2. 文件无法保存 → 检查文件权限(644) 3. 主题更新失效 → 使用全局配置方法手机操作指南 复制代码: 长按代码区域 选择"全选" 点击"复制" 粘贴代码: 打开目标文件 长按编辑区域 选择"粘贴" 保存文件: 点击编辑器右上角保存图标 确认保存操作 本教程专为手机用户优化,所有代码块均可直接长按复制,无需复杂操作。
-
小呆支付系统6.8.3/6.8.7解决ThinkPHP方法弃用问题 小呆支付系统修复指南 卡片描述 - 解决 ThinkPHP 方法弃用导致的 500 错误 宝塔计划任务 shell 无法执行,监控断线 依赖 "topthink/think-captcha": "2.0.*" & "endroid/qrcode": "^2.5" 无法直接升级 ThinkPHP,所以给出完整 6 步修复计划 问题背景 小呆支付系统在生产环境突然 500: Fatal error: ReflectionParameter::getClass() is deprecated … 根源:PHP 8.x 把 getClass() 标为弃用,ThinkPHP 旧核心仍在调用,同时宝塔计划任务中断。 不及时修复 → 订单与回调全面停摆。 修复思路 不升级整站框架,仅替换 2 个核心函数 + 批量修改变量写法 + 清缓存,全程 6 步,约 5 分钟,零业务侵入,兼容 PHP 7.4 → 8.2。 适用人群 正在使用 ThinkPHP 5.x/6.x 的支付系统 宝塔计划任务出现 curl / Reflection 报错 手机 / 电脑均可按步骤操作 修复步骤(手机长按即可复制) ① 备份 cp -r /www/wwwroot/你的根目录 /path/to/backup② 替换 thinkphp/library/think/Container.php(第 453 行) protected function bindParams(\ReflectionFunctionAbstract $reflect, $vars = []) { if ($reflect->getNumberOfParameters() == 0) return []; reset($vars); $type = key($vars) === 0 ? 1 : 0; $params = $reflect->getParameters(); $args = []; foreach ($params as $param) { $name = $param->getName(); $reflectionType = $param->getType(); if ($reflectionType && $reflectionType instanceof \ReflectionNamedType && !$reflectionType->isBuiltin()) { $args[] = $this->getObjectParam($reflectionType->getName(), $vars); } elseif ($type == 1 && !empty($vars)) { $args[] = array_shift($vars); } elseif ($type == 0 && isset($vars[$name])) { $args[] = $vars[$name]; } elseif ($param->isDefaultValueAvailable()) { $args[] = $param->getDefaultValue(); } else { throw new \InvalidArgumentException('参数缺失: ' . $name); } } return $args; } ③ 修改 application/common.php第 1771 行 function doCurl($url, $header, $data = [], $timeout = 30, $bankId = "", $POST = true) { $ch = curl_init(); if (substr($url, 0, 5) === 'https') { curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); } $atad = Db::name("pay_sz")->find(); $use_agent = $atad['ip_hfw'] != 2; } application/common.php第 1913 行 function sign($type, $api = '', $data1 = '', $data2 = '') { $cls = pay($data2['duijei'] == 1 ? 'mr' : 'yzf'); return $type == 'sign' ? $cls->sign($api, $data1) : $cls->ybhd($api, $data1, $data2['key']); } 隐藏内容,请前往内页查看详情 ⑤ 手动检查 # 检查替换后的文件 grep -rn --include=\*.php '\$[a-zA-Z_]\w*\s*\[' /www/wwwroot/你的根目录/⑥ 清缓存 rm -rf /www/wwwroot/你的根目录/runtime/*
-
教你使用小呆支付系统在app监控离线状态下唤起支付并回调方法 前言描述 - 本教程是教你如何用呆呆支付系统,在app监控离线情况下唤起起支付并回调,不使用任何云端产品,自己的常用手机就可以实现回调支付,不耗电,不耗流量 大家都知道app监控端,离线状态下是不会唤起支付,并不出码的,必须保证app不掉线,要开启亮屏,这样太麻烦了,还要不停地充电。 下面我就教大家方法 一、首先将app监控用MT进行反编译得到AndroidManifest.xml这个文件,参考以下图片 1640005264-13c899074adc7f8.jpg图片 用反编译把文件打开将: uses-permission android:name="android.permission.FOREGROUND\_SERVICE" 这段代码复制粘贴过去保存,如图: 1640005442-dbd23da2cf5d86b.jpg图片 然后进行打包安装 二、安装好后后,必须开启通知权限和后台启动以及关联启动如图: 教你使用小呆支付系统在app监控离线状态下唤起支付并回调方法4图片 教你使用小呆支付系统在app监控离线状态下唤起支付并回调方法5图片 三、还有个最重要的开关要开启,那就是来锁屏通知时亮屏,这样收到钱包通知时亮屏,激活app监控端联网并回调, 如图: 1640006156-a3ead676c74a3e4.jpg图片 四、修改小呆呆数据库表 ‘pay_gfg’将其增加一个字段为 jkstate1 varchar(32) DEFAULT '1' COMMENT '监控端状态1', 如图: 教你使用小呆支付系统在app监控离线状态下唤起支付并回调方法6图片 添加 jkstate1 教你使用小呆支付系统在app监控离线状态下唤起支付并回调方法7图片 先改为"0"在改回"1" 教你使用小呆支付系统在app监控离线状态下唤起支付并回调方法8图片 五、修改支付系统源码文件,这是最关键的一步,否则不能唤起支付 修改文件路径为:application/pay/controller/index.php和application/index/controller/pay.php 将这段代码 pay.php的 行 148 和 248 index.php 的行145和249 原代码 - $jie = Db::name("pay\_jie")->where("pid", $data['pid'])->where("id", $data\['typec\_id'\])->where("state", 1)->find();//获取通道 if($data['jkstate']==0){ $this->success('1017',null,'监控状态异常,请检查是否挂监控回调'); 改为: $jie = Db::name("pay_jie")->where("pid", $data['pid'])->where("id", $data['typec_id'])->where("state", 1)->find();//获取通道 if($data['jkstate']==3){ $this->success('1017',null,'监控状态异常,请检查是否挂监控回调'); 将代码:行290 原代码 - $cou = Db::name("pay\_gfg")->where("pid", $pid)->where("type", $type)->where("jkstate", 1)->where("state", 1)->where("land\_lx", 1)->where("ds\_status", 0)->find(); if($cou==false){ $this->success('1009',null,'暂无账户可用,请稍后再试'); } $table = "pay\_gfg"; //需要抽取的数据表 $pk = Db::name("$table")->getPK();//获取主键 $countcus = Db::name($table)->where("pid", $pid)->where("type", $type)->where("jkstate", 1)->where("state", 1)->where("land\_lx", 1)->where("ds\_status", 0)->field($pk)->select();//查询数据 $con = ''; 改为: 隐藏内容,请前往内页查看详情 如果你还有更高的方法,欢迎投稿!!!