本文整理汇总了PHP中UnifiedOrder_pub::create_biz_package方法的典型用法代码示例。如果您正苦于以下问题:PHP UnifiedOrder_pub::create_biz_package方法的具体用法?PHP UnifiedOrder_pub::create_biz_package怎么用?PHP UnifiedOrder_pub::create_biz_package使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UnifiedOrder_pub
的用法示例。
在下文中一共展示了UnifiedOrder_pub::create_biz_package方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: get_payment_code
public function get_payment_code($payment_notice_id)
{
$payment_notice = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "payment_notice where id = " . $payment_notice_id);
$order_sn = $payment_notice['notice_sn'];
$money = round($payment_notice['money'], 2);
$payment_info = $GLOBALS['db']->getRow("select id,config,logo from " . DB_PREFIX . "payment where id=" . intval($payment_notice['payment_id']));
$payment_info['config'] = unserialize($payment_info['config']);
$wx_config = $payment_info['config'];
$sql = "select name " . "from " . DB_PREFIX . "deal " . "where id =" . intval($payment_notice['deal_id']);
$title_name = $GLOBALS['db']->getOne($sql);
if (!$payment_notice['order_id']) {
$title_name = '充值';
}
$subject = $order_sn;
include APP_ROOT_PATH . "system/payment/Wxjspay/WxPayPubHelper.php";
// $data_notify_url = get_domain().APP_ROOT.'/wx_web/yjwap_response.php';
// $data_return_url = get_domain().APP_ROOT.'/wx_web/yjwap_notify.php';
//
// $data_notify_url = str_replace("/sjmapi", "", $data_notify_url);
// $data_notify_url = str_replace("/mapi", "", $data_notify_url);
// $data_notify_url = str_replace("/wap", "", $data_notify_url);
$data_return_url = str_replace("/sjmapi", "", $data_return_url);
$data_return_url = str_replace("/mapi", "", $data_return_url);
$data_return_url = str_replace("/wap", "", $data_return_url);
$notify_url = get_domain() . REAL_APP_ROOT . "/wxpay_web/notify_url.php?order_id=" . intval($payment_notice['order_id']) . "&out_trade_no=" . $order_sn;
//."&out_trade_no={$data.walipay.out_trade_no}";
$order_id = $order_sn;
//网页支付的订单在订单有效期内可以进行多次支付请求,但是需要注意的是每次请求的业务参数都要一致,交易时间也要保持一致。否则会报错“订单与已存在的订单信息不符”
$return['notify_url'] = url_wap("cart#wx_jspay", array("id" => $payment_notice_id));
$money_fen = intval($money * 100);
if ($wx_config['type'] == 'V2') {
require_once APP_ROOT_PATH . 'system/extend/ip.php';
$iplocation = new iplocate();
$user_ip = $iplocation->getIP();
$unifiedOrder = new UnifiedOrder_pub();
$unifiedOrder->update_config($wx_config['appid'], $wx_config['appsecret'], $wx_config['mchid'], $wx_config['partnerid'], $wx_config['partnerkey'], $wx_config['key'], $wx_config['sslcert'], $wx_config['sslkey']);
$unifiedOrder->setParameter("input_charset", "GBK");
$unifiedOrder->setParameter("bank_type", "WX");
$unifiedOrder->setParameter("body", $title_name);
$unifiedOrder->setParameter("partner", $wx_config['partnerid']);
//$unifiedOrder->setParameter("out_trade_no", $unifiedOrder->create_noncestr());
$unifiedOrder->setParameter("out_trade_no", $order_sn);
$unifiedOrder->setParameter("total_fee", "{$money_fen}");
$unifiedOrder->setParameter("fee_type", "0");
$unifiedOrder->setParameter("notify_url", $notify_url);
$unifiedOrder->setParameter("spbill_create_ip", $user_ip);
$unifiedOrder->setParameter("input_charset", "GBK");
$jsApiParameters = $unifiedOrder->create_biz_package();
} elseif ($wx_config['type'] == 'V3' || $wx_config['type'] == 'V4') {
$jsApi = new JsApi_pub();
$jsApi->update_config($wx_config['appid'], $wx_config['appsecret'], $wx_config['mchid'], $wx_config['partnerid'], $wx_config['partnerkey'], $wx_config['key'], $wx_config['sslcert'], $wx_config['sslkey']);
if (!isset($_GET['code'])) {
//触发微信返回code码
$url = $jsApi->createOauthUrlForCode(urlencode(get_domain() . $return['notify_url']));
Header("Location: {$url}");
$return['notify_url'] = $url;
return $return;
} else {
//获取code码,以获取openid
$code = $_GET['code'];
$jsApi->setCode($code);
$openid = $jsApi->getOpenId();
}
$unifiedOrder = new UnifiedOrder_pub();
$unifiedOrder->update_config($wx_config['appid'], $wx_config['appsecret'], $wx_config['mchid'], $wx_config['partnerid'], $wx_config['partnerkey'], $wx_config['key'], $wx_config['sslcert'], $wx_config['sslkey']);
$unifiedOrder->setParameter("openid", "{$openid}");
//商品描述
$unifiedOrder->setParameter("body", iconv_substr($title_name, 0, 50, 'UTF-8'));
//商品描述
$timeStamp = NOW_TIME;
$unifiedOrder->setParameter("out_trade_no", "{$order_sn}");
//商户订单号
$unifiedOrder->setParameter("total_fee", $money_fen);
//总金额
$unifiedOrder->setParameter("notify_url", $notify_url);
//通知地址
$unifiedOrder->setParameter("trade_type", "JSAPI");
//交易类型
$prepay_id = $unifiedOrder->getPrepayId();
//=========步骤3:使用jsapi调起支付============
$jsApi->setPrepayId($prepay_id);
$jsApiParameters = $jsApi->getParameters($wx_config['type']);
if ($wx_config['type'] == 'V4') {
$jsApiParameters = str_replace('deal_url', url_wap("deal#index", array('id' => $payment_notice['deal_id'])), $jsApiParameters);
}
}
$return['parameters'] = $jsApiParameters;
//echo $jsApiParameters;
return $return;
}
示例2: get_payment_code
public function get_payment_code($payment_notice_id)
{
$payment_notice = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "payment_notice where id = " . $payment_notice_id);
$order_info = $GLOBALS['db']->getRow("select deal_ids from " . DB_PREFIX . "deal_order where id = " . $payment_notice['order_id']);
$order_sn = $payment_notice['notice_sn'];
$money = round($payment_notice['money'], 2);
$payment_info = $GLOBALS['db']->getRow("select id,config,logo from " . DB_PREFIX . "payment where id=" . intval($payment_notice['payment_id']));
$payment_info['config'] = unserialize($payment_info['config']);
$wx_config = $payment_info['config'];
$sql = "select name from " . DB_PREFIX . "deal where id =" . intval($order_info['deal_ids']);
$title_name = $GLOBALS['db']->getOne($sql);
$subject = $order_sn;
include APP_ROOT_PATH . "system/payment/Wxjspay/WxPayPubHelper.php";
$notify_url = get_domain() . APP_ROOT . "/wxpay_web/notify_url.php?order_id=" . intval($payment_notice['order_id']) . "&out_trade_no=" . $order_sn;
//."&out_trade_no={$data.walipay.out_trade_no}";
$notify_url = str_replace("/sjmapi", "", $notify_url);
$notify_url = str_replace("/mapi", "", $notify_url);
$order_id = $order_sn;
//网页支付的订单在订单有效期内可以进行多次支付请求,但是需要注意的是每次请求的业务参数都要一致,交易时间也要保持一致。否则会报错“订单与已存在的订单信息不符”
$data_return_url = get_domain() . APP_ROOT . "/wap/index.php?ctl=pay_order&order_id=" . intval($payment_notice['order_id']);
//$return['notify_url']=$notify_url;
$data_return_url = str_replace("/sjmapi", "", $data_return_url);
$data_return_url = str_replace("/mapi", "", $data_return_url);
$return['notify_url'] = $data_return_url;
$return['is_wap'] = 1;
$return['is_wap_url'] = 0;
$return['show_pay_wxbtn'] = 1;
$return['pay_code'] = 'Wwxjspay';
$return['body'] = $title_name;
$return['total_fee'] = $money;
$return['total_fee_format'] = format_price($money);
$return['out_trade_no'] = $payment_notice['notice_sn'];
$money_fen = intval($money * 100);
if ($wx_config['type'] == 'V2') {
require_once APP_ROOT_PATH . 'system/extend/ip.php';
$iplocation = new iplocate();
$user_ip = $iplocation->getIP();
$unifiedOrder = new UnifiedOrder_pub();
$unifiedOrder->update_config($wx_config['appid'], $wx_config['appsecret'], $wx_config['mchid'], $wx_config['partnerid'], $wx_config['partnerkey'], $wx_config['key'], $wx_config['sslcert'], $wx_config['sslkey']);
$unifiedOrder->setParameter("input_charset", "GBK");
$unifiedOrder->setParameter("bank_type", "WX");
$unifiedOrder->setParameter("body", $title_name);
$unifiedOrder->setParameter("partner", $wx_config['partnerid']);
//$unifiedOrder->setParameter("out_trade_no", $unifiedOrder->create_noncestr());
$unifiedOrder->setParameter("out_trade_no", $order_sn);
$unifiedOrder->setParameter("total_fee", "{$money_fen}");
$unifiedOrder->setParameter("fee_type", "0");
$unifiedOrder->setParameter("notify_url", $notify_url);
$unifiedOrder->setParameter("spbill_create_ip", $user_ip);
$unifiedOrder->setParameter("input_charset", "GBK");
$jsApiParameters = $unifiedOrder->create_biz_package();
} elseif ($wx_config['type'] == 'V3') {
$jsApi = new JsApi_pub();
$jsApi->update_config($wx_config['appid'], $wx_config['appsecret'], $wx_config['mchid'], $wx_config['partnerid'], $wx_config['partnerkey'], $wx_config['key'], $wx_config['sslcert'], $wx_config['sslkey']);
if (!isset($_REQUEST['code'])) {
//触发微信返回code码
$url = $jsApi->createOauthUrlForCode(urlencode($return['notify_url']));
//header("Location:".$url);
$return['is_wap_url'] = 1;
$return['wap_notify_url'] = $url;
return $return;
} else {
//获取code码,以获取openid
$code = $_REQUEST['code'];
$jsApi->setCode($code);
$openid = $jsApi->getOpenId();
}
$unifiedOrder = new UnifiedOrder_pub();
$unifiedOrder->update_config($wx_config['appid'], $wx_config['appsecret'], $wx_config['mchid'], $wx_config['partnerid'], $wx_config['partnerkey'], $wx_config['key'], $wx_config['sslcert'], $wx_config['sslkey']);
$unifiedOrder->setParameter("openid", "{$openid}");
//商品描述
$unifiedOrder->setParameter("body", substr($title_name, 0, 50));
//商品描述
$timeStamp = NOW_TIME;
$unifiedOrder->setParameter("out_trade_no", "{$order_sn}");
//商户订单号
$unifiedOrder->setParameter("total_fee", $money_fen);
//总金额
$unifiedOrder->setParameter("notify_url", $notify_url);
//通知地址
$unifiedOrder->setParameter("trade_type", "JSAPI");
//交易类型
$prepay_id = $unifiedOrder->getPrepayId();
//=========步骤3:使用jsapi调起支付============
$jsApi->setPrepayId($prepay_id);
//file_put_contents(APP_ROOT_PATH."/sjmapi/log/log_xml_1.txt",print_r($prepay_id,1));
$jsApiParameters = $jsApi->getParameters();
//$deal_url=get_domain().APP_ROOT."/wap/index.php";
//$deal_url = str_replace("/sjmapi", "", $deal_url);
//$deal_url = str_replace("/mapi", "", $deal_url);
//$jsApiParameters=str_replace('deal_url',$deal_url,$jsApiParameters);
}
$return['parameters'] = $jsApiParameters;
//echo $jsApiParameters;
return $return;
}