聯系官方銷售客服
1835022288
028-61286886
全局表單,提交并付款的效果
開發思路,參考官方的付款手冊,http://www.zbshanke.com/doc/458.html
官方提供的流程時表單提交后,然后進行單擊付款,我這套方案就不用點擊兩次,一次性提交和付款一起操作。
開發流程:
1、新建表單,名字取名為ceyice
2、進入自定義字段,然后創建payid字段,來存儲是否支付成功的id號
3、新建支付類文件:dayrui/App/Form/Models/Ceyice.php
4、修改表單控制器文件:dayrui/App/Form/Contrllers/Ceyice.php
<?php namespace Phpcmf\Controllers; /** * 二次開發時可以修改本文件,不影響升級覆蓋 */ class Ceyice extends \Phpcmf\Home\Form { public function index() { $this->_Home_List(); } public function show() { $this->_Home_Show(); } public function post() { $this->_Home_Post(); } // protected function _Call_Post($data) { // 組合發起支付功能 $pay = [ 'mark' => 'my-form_ceyice-'.$data[1]['id'], 'title' => '支付發起', 'money' => 200, // 測試200 ]; $pay['uid'] = (int)$this->member['uid']; $pay['username'] = (string)$this->member['username']; $pay['type'] = $_POST['pay']['type']; $money = floatval($pay['money']); if (!$money) { $this->_msg(0, dr_lang('金額(%s)不正確', $money)); exit; } $rt = \Phpcmf\Service::M('Pay')->post($pay); if (!$rt['code']) { $this->_msg(0, $rt['msg']); } $url = PAY_URL.'index.php?s=pay&id='.$rt['code']; if (IS_API_HTTP || (\Phpcmf\Service::L('input')->get('is_ajax') || IS_API_HTTP || IS_AJAX)) { // 回調頁面 $this->_json($rt['code'], "提交成功,即將進入付款", ['url' => $url]); } else { // 跳轉到支付頁面,必須跳轉到統一的主域名中付款 dr_redirect($url, 'auto'); } return parent::_Call_Post($data); } }
5、新建支付文件 config/pay/ceyice.html
<input type="hidden" name="pay[url]" value="{$html.url}" /> <input type="hidden" name="pay[mark]" value="{$html.mark}" /> <input type="hidden" name="pay[title]" value="{$html.title}" /> <div class="form-body form"> <div class="form-group"> <label class="col-md-3 control-label">支付金額</label> <div class="col-md-2"> <input type="hidden" value="{$html.pay_value}" name="pay[money]"> <p class="form-control-static fc-price-color"> <i class="fa fa-rmb"></i> {number_format($html.pay_value, 2)} 元</p> </div> </div> <div class="form-group"> <label class="col-md-3 control-label">賬戶余額</label> <div class="col-md-2"> <p class="form-control-static fc-price-color"> <i class="fa fa-rmb"></i> {number_format($member.money, 2)} 元</p> </div> </div> <div class="form-group"> <label class="col-md-3 control-label" style="padding-top:10px">付款方式</label> <div class="col-md-5"> <div class="btn-group" data-toggle="buttons"> {loop $html.pay_type $name $t} <input type="radio" name="pay[type]" {if $name == $html.pay_default}selected{/if}" value="{$name}" class="toggle"> {$t['icon']} {$t['name']} </label> {/loop} </div> </div> </div> </div>
6、修改表單框架代碼:在表單提交form內部加上
{dr_payform("my-form_ceyice-sn")} {php $rt_url="";}
7、效果就是圖一的效果了
支持迅睿開源精神,我把我在開發中做的一些筆記分享,需要有開發基礎的開發者才能看得懂,也可以接收付費定制!
厲害,感謝分享
大神這個字段是什么類型 文本 還是組合購買或是單一購買
看下大神的杰作
好東西,我也想弄一個,付費求服務啊
學習一下,學習一下
學習了,感謝分享
回復看看,很好的貼子
學習學習,正好需要
頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂
回復@IT-老男孩 后半句沒看到嗎?用來存id號
記錄一下,以防后備之需。
我來學習看看
學習學學習學習·····················
感謝分享,學習學習
學習,學習
寫的不錯