public function index($memberId) { //必填,不需要修改 $payType = $_GET['payType']; $wxPayHelper = new WxPayHelper($memberId, $payType); //判断memberId有效性以及调用支付配置 if ($payType == 'shop' || $payType == 'tuan' || $payType == 'hotel' || $payType == 'dc') { //服务器异步通知页面路径 $notify_url = 'http://' . $_SERVER['SERVER_NAME'] . "/pay/wxpay/notifywx/" . $memberId . "/" . $payType; //页面跳转同步通知页面路径 $call_back_url = 'http://' . $_SERVER['SERVER_NAME'] . "/3G/" . $payType . "/order/" . $memberId . "/"; //操作中断返回地址 $merchant_url = 'http://' . $_SERVER['SERVER_NAME'] . "/3G/" . $payType . "/order/" . $memberId . "/"; } //付款金额 $total_fee = $_GET['total'] * 100; //订单名称 $subject = str_replace("X", "", $_GET['subject']); $subject = str_replace(" ", "", $subject); $subject = "测试订单"; //获取订单编号 $out_trade_no = $_GET['OrderId']; //获取银行通道类型 $wxPayHelper->setParameter("bank_type", "WX"); //商品描述 $wxPayHelper->setParameter("body", $subject); //商户号 $wxPayHelper->setParameter("partner", $wxPayHelper->getPartnerId()); //商户订单号 $wxPayHelper->setParameter("out_trade_no", $out_trade_no); //订单总金额 $wxPayHelper->setParameter("total_fee", $total_fee); //支付币种 $wxPayHelper->setParameter("fee_type", "1"); //通知url $wxPayHelper->setParameter("notify_url", $notify_url); //订单生成的机器IP $wxPayHelper->setParameter("spbill_create_ip", $_SERVER['REMOTE_ADDR']); //字符编码 $wxPayHelper->setParameter("input_charset", "UTF-8"); //生成jsapi支付请求json $data['msg'] = $wxPayHelper->create_biz_package(); $data['total'] = $_GET['total']; $data['subject'] = $_GET['subject']; $data['call_back_url'] = $call_back_url; $data['merchant_url'] = $merchant_url; $this->load->view("/member/weipay/weixinpay", $data); }
public function weixinpay() { $commonUtil = new CommonUtil(); $wxPayHelper = new WxPayHelper(); $source = Input::safeHtml($_POST['source']); //接收来源属性 $custom_id = intval($_POST['custom_id']); //接收客户id $order_id = intval($_POST['trade_no']); //接收订单id $merchant_url = Input::safeHtml($_POST['merchant_url']); //操作中断返回地址 //获取商城id $shop_id = $_GET['shop_id']; //获取商品名称 $shop_name = M(C('DB_WECHAT_NAME') . '.wxh_order_detail')->where("is_del = 0 and order_id = '" . $order_id . "' and source = '" . $source . "'")->getField('commodity_name'); //echo M()->getLastSql(); //dump($shop_name); // echo '<br >access_token为:'.$wxPayHelper->access_token(false); //获取订单信息 $order_info = M(C('DB_WECHAT_NAME') . '.wxh_order')->where('is_del = 0 and status = 5 and id = ' . $order_id . ' and user_id = ' . $_SESSION['U_IF']['member_id'])->field('from_id, price, add_time')->find(); //$price = $order_info['price']; //验证post参数,非法返回 if ($source == '' || $custom_id <= 0 || $order_id <= 0 || $merchant_url == '') { die(jump(array('jumpmsg' => '参数非法'))); } //获取订单编号 :来源+订单ID+客户ID+用户ID $order_no = $source . '_' . $order_id . '_' . $custom_id . '_' . $_SESSION['U_IF']['member_id']; //echo $order_no; //$wxpay_config = C('WX_PAY_CONFIG'); //dump($wxpay_config); //echo $total_fee = round($price,2); //付款金额 //获取银行通道类型 $wxPayHelper->setParameter("bank_type", "WX"); //商品描述 $wxPayHelper->setParameter("body", $shop_name); //商户号 $wxPayHelper->setParameter("partner", $wxPayHelper->getPartnerId()); //商户订单号 $wxPayHelper->setParameter("out_trade_no", $order_no); //订单总金额 $wxPayHelper->setParameter("total_fee", '1'); //支付币种 $wxPayHelper->setParameter("fee_type", "1"); //通知url $wxPayHelper->setParameter("notify_url", "http://test.weixinhai.net/shop.php/Wxpay/payNotifyUrl/shop_id/" . $shop_id); //订单生成的机器IP $wxPayHelper->setParameter("spbill_create_ip", get_client_ip()); //字符编码 $wxPayHelper->setParameter("input_charset", "UTF-8"); //生成jsapi支付请求json //dump($wxPayHelper->parameters); $data = array('merchant_url' => $merchant_url, 'custom_id' => $custom_id, 'shop_name' => $shop_name, 'order_info' => $order_info); $msg = $wxPayHelper->create_biz_package(); $this->assign('merchant_url', $merchant_url); $this->assign('custom_id', $custom_id); $this->assign('data', $data); $this->assign('msg', $msg); $this->display('./shop/Tpl/Index/weixinpay.html'); //dump($msg); }
$call_back_url = 'http://' . $_SERVER['SERVER_NAME'] . "/3G/" . $payType . "/order/" . $memberid . "/"; //操作中断返回地址 $merchant_url = "http://www.wei3g.cn/3G/" . $payType . "/order/" . $memberid . "/"; } //付款金额 $total_fee = $_GET['total'] * 100; //订单名称 $subject = $_GET['subject']; //获取订单编号 $out_trade_no = $_GET['OrderId']; //获取银行通道类型 $wxPayHelper->setParameter("bank_type", "WX"); //商品描述 $wxPayHelper->setParameter("body", $subject); //商户号 $wxPayHelper->setParameter("partner", $wxPayHelper->getPartnerId()); //商户订单号 $wxPayHelper->setParameter("out_trade_no", $out_trade_no); //订单总金额 $wxPayHelper->setParameter("total_fee", $total_fee); //支付币种 $wxPayHelper->setParameter("fee_type", "1"); //通知url $wxPayHelper->setParameter("notify_url", 'http://demo.weixinhai.com.cn/mobile/wxpay/weixinpay.php'); //订单生成的机器IP $wxPayHelper->setParameter("spbill_create_ip", $_SERVER['REMOTE_ADDR']); //字符编码 $wxPayHelper->setParameter("input_charset", "UTF-8"); //生成jsapi支付请求json $msg = $wxPayHelper->create_biz_package(); ?>