网银支付直通插件 实现方法

2016-07-07 14:55 来源:www.chinab4c.com 作者:ecshop专家

因为客户要求做了这个插件后 征求网友意见 大家也有这需求,今天把做法贴上来。

原理:选择这些银行是另外传递一个值 这个值被网银获取到后直接跳转到对应银行支付页面。

网银直通支付:

1、后台开通网银支付 ,在 后台执行sql语句里 输入select * from ecs_payment查看网银对应的pay_id

2、打开flow.dwt 找到显示支付列表的地方 咱为了吧网页支付单独显示 所以需要做判断<!-- {foreach from=$payment_list name=no item=payment} --> 这个循环里进行判断 比如我们知道网银是pay_id 是3 我们这写{if $payment.pay_id neq 3}把不是网银的在这显示{/if}<!-- {/foreach} 循环支付方式 -->

3、网银部分写到循环外包,
  1. <table width="80%" border="0" cellspacing="0" cellpadding="0" class="ordertable" >
  2. <tr>
  3. <td>网上银行</td>
  4. </tr>
  5. <tr>
  6. <td>
  7. <input type="radio" name="payment" id="chinabak" value="3" style="display:none;"/>
  8. <div class="pay_car">
  9. <ul>
  10. <li><input name="bank" type="radio" value="308" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put" /><img src="images/banklogo/icon_zsyh_s.gif
  11. " alt="招商银行" align="middle" /></li>
  12. <li><input name="bank" type="radio" value="105" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put" /><img src="images/banklogo/icon_ccb_s.gif" alt="中国建设银行" align="middle" /></li>
  13. <li><input name="bank" type="radio" value="103" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put"/><img src="images/banklogo/icon_abc_s.gif" alt="中国农业银行" align="middle" /></li>

  14. <li><input name="bank" type="radio" value="104" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put" /><img src="images/banklogo/icon_bofc_s.gif" alt="中国银行" align="middle" /></li>
  15. <li><input name="bank" type="radio" value="301" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put"/><img src="images/banklogo/icon_comm_s.gif" alt="交通银行" align="middle" /></li>

  16. <li><input name="bank" type="radio" value="311" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put"/><img src="images/banklogo/icon_pingan_s.gif" alt="平安银行" align="middle" /></li>
  17. <li><input name="bank" type="radio" value="309" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put" /><img src="images/banklogo/icon_cib_s.gif" alt="兴业银行" align="middle" /></li>
  18. <li><input name="bank" type="radio" value="305" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put" /><img src="images/banklogo/icon_cmbc_s.gif" alt="中国民生银行" align="middle" />
  19. <div id="msyh" style="display:none;background:url(https://pay3.chinabank.com.cn/i/line.gif) no-repeat top left;padding-left:13px;margin:10px 0 0 30px;" ctrldisp="true">
  20. <input type="radio" name="minsheng" value="305" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put"/>民生卡支付<br />
  21. <input type="radio" name="minsheng" value="3051" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put"/>民生网银支付</div></li>
  22. <li><input name="bank" type="radio" value="306" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put"/><img src="images/banklogo/icon_gdb_s.gif" alt="广东发展银行" align="middle" /></li>
  23. <li><input name="bank" type="radio" value="307" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put"/><img src="images/banklogo/icon_sdb_s.gif" alt="深圳发展银行" align="middle" /></li>
  24. <li><input name="bank" type="radio" value="314" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put"/><img src="images/banklogo/icon_spdb_s.gif" alt="海浦发展银行" align="middle" /></li>
  25. <li><input name="bank" type="radio" value="313" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put" /><img src="images/banklogo/icon_itic_s.gif" alt="中信银行" align="middle" /></li>
  26. <li><input name="bank" type="radio" value="312" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put" /><img src="images/banklogo/icon_cebb_s.gif" alt="光大银行" align="middle" /></li>
  27. <li><input name="bank" type="radio" value="316" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put" /><img src="images/banklogo/icon_nbbank_s.gif" alt="宁波银行" align="middle" /></li>

  28. <li><input name="bank" type="radio" value="3279" id="chinabaklist" onclick="selectpayment_chanpay(3)" class="bank_put"/><img src="images/banklogo/icon_zggsyh_s.gif" alt="中国工商银行" align="middle" /></li>

  29. </ul>
  30. </div>
  31. </td>
  32. </tr></table>
复制代码



4、打开shopping_flow.js添加selectpayment_chanpay这个函数
  1. function selectpayment_chanpay(id)
  2. {
  3. document.getElementById("chinabak").checked=true;
  4. Ajax.call('flow.php?step=select_payment', 'payment=' + id, orderSelectedResp**e, 'GET', 'JSON');
  5. }
复制代码
因为我们银行input 的name值 和默认支付方式的name值不一样 所以 当选了银行支付后 再去选 支付宝 银行支付的选择不能去掉 所以 我们需要 修改 selectPayment 这个函数 在这个函数里添加 getRadioValue('chinabaklist');


同时 我们复制
  1. function getRadioValue(name){
  2. var radioes = document.getElementsByName(name);

  3. for(var i=0;i<radioes.length;i++)
  4. {
  5. radioes[i].checked = false;
  6. }
  7. }
复制代码
到shopping_flow.js


5、打开flow.php在2031行左右 加入
  1. if($order['pay_id'] =='3')
  2. {
  3. $order['pmode_id'] = $_POST['bank'];
  4. }如果pay_id 是3
复制代码


6、打开include/modules/paymet/chinabank.php118行左右加入$def_url .= "<input type=HIDDEN name='pmode_id' value='".$order['pmode_id']."'>";

以上就是实习方法

回答:
这么好的帖子竟然没人顶!

要是版主搞个现成的升级文件岂不造福大众

这个支持一下!!

学习了,谢谢

0000000000000000000000

不错的齐老师,膜拜一下。




很好的建议。

顶!这才是好教程!

有例子不?~~~~~~

支持下,如果有演示那就更完美了呵呵

xuez.com