研究了一天的自定义付款支付收费接口可能是自己才疏学浅也可能这

迅睿框架 更新 2020-04-03 09:47:05 rewalax

研究了一天官方的“自定义付款/支付/收费”接口(https://www.xunruicms.com/doc/458.html),可能是自己才疏学浅也可能官方这个接口是真不太好用,唉,都有点想放弃了。

发完牢骚具体问大家个问题:

// 付款数据
    // $id 记录id; $num 数量; $sku 自定义属性; $siteid 站点id
    public function get_row($id, $num, $sku, $siteid) {

        // 查询数据记录,判断是否存在
        $data = $this->_get_row($id, $siteid);
        
        //这里做判断,如果不满足则报错
        
        return [
            'price' => $this->get_price($id, $num, $sku, $siteid),
            'title' => '支付记录标题'.$data['title'],
            'sell_uid' => 0, // 商家uid
            'sell_username' => '', // 商家账号
        ];
    }

上面get_row函数中我想做一些判断,如果不满足条件则报错,但是看框架中这个接口是这样调用的:

dayrui\Fcms\Model\Pay.php

case 'my':
    // 来自二次开发
    $obj = $this->my_pay_obj($rid);
    if (method_exists($obj, 'get_row')) {
        $row = $obj->get_row($fid, $num, $sku, SITE_ID);
        if (!$row) {
            return dr_return_data(0, dr_lang('主题不存在'));
        }
    } else {
        return dr_return_data(0, dr_lang('类方法[get_row]未定义'));
    }

这里只是获取了接口中get_row方法的返回值,没法调用dr_return_data或$this->json来弹出报错提示,请问这里该怎么解决?

方案

  • rewalax #1 · 2020-04-03 00:18:44
    补充: 就是想弹出下面这样的报错提示:
    image
  • 易学习 #2 · 2020-04-03 01:57:14
    满意答案
    只是你对框架不熟悉而已,\Phpcmf\Service:C()->_json(0, 'xxxxxxxxxx')支付程序我研究很久了,论坛好多人都找我做过支付功能
  • 靠悬赏赚钱买授权 #3 · 2020-04-03 08:41:39
        // $id 记录id; $num 数量; $sku 自定义属性; $siteid 站点id
        public function get_row($id, $num, $sku, $siteid) {
    
            // 查询数据记录,判断是否存在
            $data = $this->_get_row($id, $siteid);
            
            //这里做判断,如果不满足则报错
            if ($this->get_price($id, $num, $sku, $siteid) < 20) {
                \Phpcmf\Service:C()->_json(0, '不能少于20元');
            }
            
            return [
                'price' => $this->get_price($id, $num, $sku, $siteid),
                'title' => '支付记录标题'.$data['title'],
                'sell_uid' => 0, // 商家uid
                'sell_username' => '', // 商家账号
            ];
        }
  • rewalax #4 · 2020-04-03 08:50:39
    感谢楼上两位大佬,最后查看官方框架源码用\Phpcmf\Service:C()->_msg 解决了,这里用json是弹不出提示框的,只能用msg跳转
  • 快乐浪子哥 #5 · 2020-04-03 09:37:52
    还是比较佩服易大师,我让他给我开发过好几个支付功能,都没破坏系统源码,技术非常给力
  • rewalax #6 · 2020-04-03 09:47:05
    @易学习:感谢回复,技术大拿

迅睿系统漏洞

GeoSeo工具箱
GeoSeo工具箱(2026-09-11)
修正历史记录推送
微信系统
微信系统(2026-09-11)
增加数据统计总览界面 账号管理增加服务和公众号的区别 菜单管理支持更...
答题系统
答题系统(2026-09-11)
一站式在线答题系统,支持真题考试、题库练习和错题本,适合培训、考证、...
阿里云滑动验证码
阿里云滑动验证码(2026-09-10)
采用阿里云验证码替换迅睿系统自带的图片验证码和滑动验证码。后台设置方...
下载Plus
下载Plus(2026-09-09)
为网站附件下载加上“计数、限次、统计、防护”四重能力:按用户组控制下...
全库搜索
全库搜索(2026-09-09)
修复全模块搜索时,删除按钮点击无效的bug
在线客服
在线客服(2026-09-09)
增加消息提示音
GeoSeo收录宝
GeoSeo收录宝(2026-09-08)
新增 多网站系统Sites 开关 新增 SITE_ID字段,完美...
站群分站系统
站群分站系统(2026-09-08)
后台加入模板标签的语法代码供复制 当站点logo未上传时,调用系统...