<?php
|
ini_set('date.timezone','Asia/Shanghai');
|
error_reporting(E_ERROR);
|
require_once "../lib/WxPay.Api.php";
|
require_once 'log.php';
|
|
$serverName = "120.24.159.70";//服务器的名字,本地localhost
|
$connectionInfo = array( "Database"=>"TVDV", "UID"=>"sa", "PWD"=>"1382929319", "CharacterSet"=>"UTF-8");
|
$conn = sqlsrv_connect( $serverName, $connectionInfo);
|
if( $conn ) {
|
//echo "数据库连接成功.<br />";
|
}else{
|
echo "数据库连接失败!!<br />";
|
die( print_r( sqlsrv_errors(), true));
|
}
|
$key='apivcomcn20170421';
|
|
//初始化日志
|
$logHandler= new CLogFileHandler("../logs/".date('Y-m-d').'.log');
|
$log = Log::Init($logHandler, 15);
|
|
|
// var_dump($_REQUEST);exit;
|
|
$ShopOrdID = $_REQUEST["ShopOrdID"];
|
$url = "Check_Order.php?ShopOrdID=$ShopOrdID";
|
|
|
|
|
if(empty($_REQUEST["transaction_id"]) && empty($_REQUEST["out_trade_no"])){
|
echo "<script>alert('缺少必要参数!')window.location.href='$url'</script>";exit;
|
}
|
if(isset($_REQUEST["transaction_id"]) && $_REQUEST["transaction_id"] != ""){
|
$transaction_id = $_REQUEST["transaction_id"];
|
$input = new WxPayOrderQuery();
|
$input->SetTransaction_id($transaction_id);
|
$result=WxPayApi::orderQuery($input);
|
$transaction_id = $result["transaction_id"];
|
|
|
$countid = 0;
|
|
$check_sql = "select count(id) as countid from dbo.userMoney where pay_transactionID='$transaction_id'";
|
$check_go = sqlsrv_query($conn,$check_sql);
|
while($checks = sqlsrv_fetch_array( $check_go, SQLSRV_FETCH_ASSOC) ) {
|
$countid = $checks["countid"];
|
}
|
// var_dump($countid);exit;
|
if($countid > 0){
|
echo "<script>alert('该微信支付已记录!');window.location.href='$url';</script>";exit;
|
}
|
if($countid == 0){
|
$method = "Order_PayNotify";
|
|
$total_fee = ($result["cash_fee"])/100;
|
$mch_id = $result["mch_id"];
|
$out_trade_no = $result["out_trade_no"];
|
|
$PayMono = urlencode("微信支付");
|
|
$arr = array("method"=>$method,"ShopOrdID"=>$ShopOrdID,"total_fee"=>$total_fee,"mch_id"=>$mch_id,"out_trade_no"=>$out_trade_no,"PayMono"=>$PayMono,"transaction_id"=>$transaction_id);
|
ksort($arr);
|
$i=0;
|
$stringA='';
|
foreach($arr as $k=>$v){
|
$stringA=$stringA.$k.$v;
|
}
|
$stringSignTemp=$stringA.$key;
|
$stringSignTemp=str_replace(" ", "%20", $stringSignTemp);
|
|
$sign=MD5($stringSignTemp);
|
$content = 'method='.$method.'&ShopOrdID='.$ShopOrdID.'&total_fee='.$total_fee.'&mch_id='.$mch_id.'&out_trade_no='.$out_trade_no.'&PayMono='.$PayMono.'&transaction_id='.$transaction_id;
|
$content .= '&Sign='.$sign;
|
$order_url='http://api.v.com.cn/order/?'.$content;
|
$order_url=str_replace(" ", "%20", $order_url);
|
// var_dump($url);exit;
|
$orderinfo=file_get_contents($order_url);
|
$orderinfo=json_decode($orderinfo,true);
|
// var_dump($orderinfo);exit;
|
if($orderinfo["result"] == 1){
|
echo "<script>alert('成功!');window.location.href='http://vadmin.v.com.cn/order_detail.asp?ShopOrdID=$ShopOrdID;'</script>";exit;
|
}
|
}
|
|
}
|
|
|
|
if(isset($_REQUEST["out_trade_no"]) && $_REQUEST["out_trade_no"] != ""){
|
$out_trade_no = $_REQUEST["out_trade_no"];
|
$input = new WxPayOrderQuery();
|
$input->SetOut_trade_no($out_trade_no);
|
// printf_info(WxPayApi::orderQuery($input));
|
$result=WxPayApi::orderQuery($input);
|
// var_dump($result);exit();
|
|
$transaction_id = $result["transaction_id"];
|
|
|
$countid = 0;
|
|
$check_sql = "select count(id) as countid from dbo.userMoney where pay_transactionID='$transaction_id'";
|
$check_go = sqlsrv_query($conn,$check_sql);
|
while($checks = sqlsrv_fetch_array( $check_go, SQLSRV_FETCH_ASSOC) ) {
|
$countid = $checks["countid"];
|
}
|
// var_dump($countid);exit;
|
if($countid > 0){
|
echo "<script>alert('该微信支付已记录!');window.location.href='$url';</script>";exit;
|
}
|
if($countid == 0){
|
$method = "Order_PayNotify";
|
|
$total_fee = ($result["cash_fee"])/100;
|
$mch_id = $result["mch_id"];
|
$out_trade_no = $result["out_trade_no"];
|
|
$PayMono = urlencode("微信支付");
|
|
$arr = array("method"=>$method,"ShopOrdID"=>$ShopOrdID,"total_fee"=>$total_fee,"mch_id"=>$mch_id,"out_trade_no"=>$out_trade_no,"PayMono"=>$PayMono,"transaction_id"=>$transaction_id);
|
ksort($arr);
|
$i=0;
|
$stringA='';
|
foreach($arr as $k=>$v){
|
$stringA=$stringA.$k.$v;
|
}
|
$stringSignTemp=$stringA.$key;
|
$stringSignTemp=str_replace(" ", "%20", $stringSignTemp);
|
|
$sign=MD5($stringSignTemp);
|
$content = 'method='.$method.'&ShopOrdID='.$ShopOrdID.'&total_fee='.$total_fee.'&mch_id='.$mch_id.'&out_trade_no='.$out_trade_no.'&PayMono='.$PayMono.'&transaction_id='.$transaction_id;
|
$content .= '&Sign='.$sign;
|
$order_url='http://api.v.com.cn/order/?'.$content;
|
$order_url=str_replace(" ", "%20", $order_url);
|
// var_dump($url);exit;
|
$orderinfo=file_get_contents($order_url);
|
$orderinfo=json_decode($orderinfo,true);
|
if($orderinfo["result"] == 1){
|
echo "<script>alert('成功!');window.location.href='http://vadmin.v.com.cn/order_detail.asp?ShopOrdID=$ShopOrdID;'</script>";exit;
|
}
|
}
|
}
|
|
|
?>
|