query("SELECT * FROM `".$db_config["def"]."member` WHERE `uid`='".$_GET['uid']."' limit 1"); $member=$db->fetch_array($member_sql); $mdtoken = md5($member['username'].$member['password'].$member['salt'].$member['usertype']); $uid = $member['uid']; if($_GET['token']!=$mdtoken){ die; } }else{ $uid=(int)$_COOKIE['uid']; $_GET['is_invoice']=(int)$_GET['is_invoice']; $_GET['balance']=(int)$_GET['balance']; $member_sql=$db->query("SELECT * FROM `".$db_config["def"]."member` WHERE `uid`='".$uid."' limit 1"); $member=$db->fetch_array($member_sql); if($member['usertype'] != $_COOKIE['usertype']||md5($member['username'].$member['password'].$member['salt'])!=$_COOKIE['shell']){ die; } } $sql=$db->query("select * from `".$db_config["def"]."company_order` where `order_id`='".$_GET['dingdan']."' AND `order_price`>=0"); $row=$db->fetch_array($sql); if((!$row['uid']) || ($row['uid']!=$uid)){ die; } require_once("alipay.config.php"); require_once("lib/alipay_submit.class.php"); /***/ /*if($config['alipaytype']=="1") { $dir = "alipay"; }else{ $dir = "alipaydual"; } require_once(dirname(dirname(dirname(__FILE__)))."/api/".$dir."/alipay_data.php"); //合作身份者id,以2088开头的16位纯数字 $alipay_config['partner'] = $alipaydata['sy_alipayid']; //安全检验码,以数字和字母组成的32位字符 //如果签名方式设置为"MD5"时,请设置该参数 $alipay_config['key'] = $alipaydata['sy_alipaycode']; //商户的私钥(后缀是.pen)文件相对路径 //如果签名方式设置为"0001"时,请设置该参数 $alipay_config['private_key_path'] = 'key/rsa_private_key.pem'; unset($alipay_config['private_key_path']); //支付宝公钥(后缀是.pen)文件相对路径 //如果签名方式设置为"0001"时,请设置该参数 $alipay_config['ali_public_key_path']= 'key/alipay_public_key.pem'; unset($alipay_config['ali_public_key_path']); //↑↑↑↑↑↑↑↑↑↑请在这里配置您的基本信息↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑ //签名方式 不需修改 $alipay_config['sign_type'] = 'MD5'; //字符编码格式 目前支持 gbk 或 utf-8 $alipay_config['input_charset']= 'GBK'; //ca证书路径地址,用于curl中ssl校验 //请保证cacert.pem文件在当前文件夹目录中 $alipay_config['cacert'] = $config['sy_weburl']."/api/wapalipay/cacert.pem"; //访问模式,根据自己的服务器是否支持ssl访问,若支持请选择https;若不支持请选择http $alipay_config['transport'] = 'http';*/ /***/ /**************************调用授权接口alipay.wap.trade.create.direct获取授权码token**************************/ //服务器异步通知页面路径 $notify_url = $config['sy_weburl']."/api/wapalipay/notify_url.php"; //需http://格式的完整路径,不允许加?id=123这类自定义参数 //页面跳转同步通知页面路径 $call_back_url = $config['sy_weburl']."/api/wapalipay/call_back_url.php"; //需http://格式的完整路径,不允许加?id=123这类自定义参数 //操作中断返回地址 $merchant_url = $config['sy_weburl']."/api/wapalipay/interrupt_back_url.php"; //用户付款中途退出返回商户的地址。需http://格式的完整路径,不允许加?id=123这类自定义参数 //商户订单号 $out_trade_no = $row['order_id']; //商户网站订单系统中唯一订单号,必填 //订单名称,暂时使用订单号作为订单名称 $subject = $row['order_id']; //必填 //付款金额 $total_fee = $row['order_price']; //必填 if($alipay_config['sign_type'] == 'MD5'){ //返回格式 $format = "xml"; //必填,不需要修改 //返回格式 $v = "2.0"; //必填,不需要修改 //请求号 $req_id = date('Ymdhis'); //必填,须保证每次请求都是唯一 //**req_data详细信息** //卖家支付宝帐户 $seller_email = $alipaydata['sy_alipayemail']; //请求业务参数详细 $req_data = '' . $notify_url . '' . $call_back_url . '' . $seller_email . '' . $out_trade_no . '' . $subject . '' . $total_fee . '' . $merchant_url . ''; //必填 /************************************************************/ //构造要请求的参数数组,无需改动 $para_token = array( "service" => "alipay.wap.trade.create.direct", "partner" => trim($alipay_config['partner']), "sec_id" => trim($alipay_config['sign_type']), "format" => $format, "v" => $v, "req_id" => $req_id, "req_data" => $req_data, "_input_charset" => trim(strtolower($alipay_config['input_charset'])) ); //建立请求 $alipaySubmit = new AlipaySubmit($alipay_config); $html_text = $alipaySubmit->buildRequestHttp($para_token); //URLDECODE返回的信息 $html_text = urldecode($html_text); //解析远程模拟提交后返回的信息 $para_html_text = $alipaySubmit->parseResponse($html_text); //获取request_token $request_token = $para_html_text['request_token']; /**************************根据授权码token调用交易接口alipay.wap.auth.authAndExecute**************************/ //业务详细 $req_data = '' . $request_token . ''; //必填 //构造要请求的参数数组,无需改动 $parameter = array( "service" => "alipay.wap.auth.authAndExecute", "partner" => trim($alipay_config['partner']), "sec_id" => trim($alipay_config['sign_type']), "format" => $format, "v" => $v, "req_id" => $req_id, "req_data" => $req_data, "_input_charset" => trim(strtolower($alipay_config['input_charset'])) ); //建立请求 $alipaySubmit = new AlipaySubmit($alipay_config); $html_text = $alipaySubmit->buildRequestForm($parameter, 'get', '确认'); header('Location: '.$html_text); }else{ require_once dirname(dirname(dirname(__FILE__))).'/api/aop/wap/AopClient.php'; require_once dirname(dirname(dirname(__FILE__))) . '/api/aop/wap/request/AlipayTradeWapPayRequest.php'; $aop = new AopClient (); $aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do'; $aop->appId = $alipaydata['sy_alipayappid']; $aop->rsaPrivateKey = $alipaydata['sy_alipayprivatekey']; $aop->alipayrsaPublicKey = $alipaydata['sy_alipaypublickey']; $aop->apiVersion = '1.0'; $aop->signType = 'RSA2'; $aop->postCharset='UTF-8'; $aop->format='json'; $request = new AlipayTradeWapPayRequest (); $request->setBizContent("{" . "\"body\":\"{$body}\"," . "\"subject\":\"{$subject}\"," . "\"out_trade_no\":\"{$out_trade_no}\"," . "\"total_amount\":\"{$total_fee}\"," . "\"quit_url\":\"{$merchant_url}\"," . "\"product_code\":\"QUICK_WAP_PAY\"," . " }"); $request->setReturnUrl($call_back_url); $request->setNotifyUrl($notify_url); $result = $aop->pageExecute ($request); echo $result; // $responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response"; // // $resultCode = $result->$responseNode->code; // if(!empty($resultCode)&&$resultCode == 10000){ // echo "成功"; // } else { // echo "失败"; // } } ?>