代码拉取完成,页面将自动刷新
同步操作将从 albert/quick-pay 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
<?php
// 自行配置跨域请求
//header('Access-Control-Allow-Origin:http://localhost:8080');
include 'functions.php';
include 'pxpay/Pxpay.php';
/**
下订单,支付页面查询订单,获取订单支付状态
* */
$act = $_GET['act'];
if($act == 'new'){
$paytype = $_GET['paytype'];
if ($paytype != 'ALIPAY' && $paytype != 'WXPAY') {
die('未选择支付方式');
} else {
$orderid = time(); //自己的订单ID,不可以重复
$money = 0.01; //订单金额,必须有对应的二维码
if(isset($_GET['money'])){
$money =(float)$_GET['money'];
if($money>1.05){
die('测试金额不能超过1元');
}
}
$args = [
'money' => $money,
'orderid' => $orderid,
'paytype' => $paytype,
'notify_url' => getMyUrl() . '/notify.php',
'return_url' => getMyUrl() . '/complete.html',
];
$pxpay = new pxpay\Pxpay();
$appid = isset($_GET['appid'])?$_GET['appid']:false;
$merchant_secret = isset($_GET['merchant_secret'])?$_GET['merchant_secret']:false;
if($appid && $merchant_secret) {
$pxpay->init($appid,$merchant_secret);//输入自己的appid,secret
}
$rs = $pxpay->addOrder($args);
if($rs){
//跳转到支付页面
setOrder($rs);//这里存在文本文件中,实际应该存入数据库.
$referer = $_SERVER['HTTP_REFERER'];
$result = "";
preg_match("/^http(s)?:\/\/(.*?)\//", $referer, $result);
$url = (sizeof($result) > 0 ? $result[0] : '/') .'pay.html?orderid=' . $rs['orderid'];
//支付链接,打开这个链接就可以支付了.返回给客户端,或者自己直接跳转
//如果通过ajax请求本接口.就返回url,客户端拿到支付链接后,打开即可;
header("Location: $url");
}else{
echo $pxpay->getErrorMsg();
}
exit();
}
}
$orderid = $_GET['orderid'];
if($act == 'checkorder'){
//检测订单状态
$status = getOrder($orderid);
$data = [
'pay'=>isset($status['status'])?$status['status']:0,
'url'=>'complate.html'
];
}else{
//支付页面,获取订单信息
$data = getOrder($orderid);//这里从文本中加载.实际应该从数据库里读取
}
echo json(0,$data);
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。