支付宝手机网站支付

1.订单码支付,首先下载官方网站提供的sdk包到你的项目中。

2.部署到服务器上后,在根目录的config.php上配置好你的appId、公钥私钥和同步异步回调路径及日志文件后,就直接能访问到他们给的示例网页。

3.选择第一项手机网站支付,提交订单号价格信息就到了支付的页面。这个实际的要在手机上访问,支付会调起你手机上的支付宝。支付信息的文件为wappay/pay.php

4.同步回调文件为目录下的return_url.php,异步回调的文件为根目录下的notify_url.php。

5.我是到这一步直接引用到了我的项目中,下载好sdk文件,把pay.php中的代码复制到你的控制器方法中,引用相关的类文件。文件下载到你的项目中后,需要根据你的项目文件,重新配置命名空间,而后在你的控制器中引用。(有些引用的文件中会引用到其他文件,那么相对应的文件也需配置新的命名空间)

6.异步回调方法,按sdk中的异步文件代码操作就行。(注意:config中配置的公钥是支付宝应用公钥)

7.同步回调方法亦如此,按给的示例操作就可以。

8.同步回调后会得到你创建的订单信息,这时候若想获得订单状态及支付结果给前端,而前端无法获取订单号,可跳转url并携带订单号等信息给前端某个页面。

php 复制代码
<?php

public function alih5_return()
    {
        $arr=$_GET;
        $config  = $this->aliH5Config();
        $alipaySevice = new AlipayTradeService($config);
        $result = $alipaySevice->check($arr);

        if($result) {//验证成功
            $out_trade_no = htmlspecialchars($_GET['out_trade_no']);
            $order = db('orders')->field('out_trade_no,uid,price,create_time,status,order_type,pay_type')->where(['out_trade_no' => $out_trade_no])->find();
            if ($order) {
                $dream_id = db('membe_user')->where(['membe_id' => $order['uid']])->value('dream_id');
                $url = 'https://www.dream.com/.../withdraw?out_trade_no='.$out_trade_no.'&dream_id='.$dream_id;
                header("Location: $url");exit();
            }else{
                return reserr('订单有误');
            }
        } else {
            //验证失败
            echo "验证失败";
        }
    }

若遇到其他问题,也可直接咨询支付宝在线技术支持,他们会详细的给你解答你遇到的问题

相关推荐
用户30745969820715 小时前
🐶🐱 协变与逆变:用“动物收容所”讲清楚 PHP 类型的“灵活继承”
php
用户30745969820717 小时前
🚀 PHP 面向对象四大核心知识点全面详解
php
herderl17 小时前
【无标题】命名管道(Named Pipe)是一种在操作系统中用于**进程间通信(IPC)** 的机制
java·linux·服务器·嵌入式硬件·php
云博客-资源宝1 天前
php防注入和XSS过滤参考代码
开发语言·php·xss
huluang1 天前
PHP版本控制系统:高效文档管理
开发语言·php
Bruce_Liuxiaowei1 天前
绕过文件上传漏洞并利用文件包含漏洞获取系统信息的技术分析
运维·网络安全·php·apache
用户3074596982072 天前
🌟 PHP 重载(Overloading)——不是你想的那样!
php
用户3074596982072 天前
🌟 匿名类(Anonymous Class)——“一次性用完就扔的小纸条”
php
钢铁男儿3 天前
C# 异步编程:提升程序性能与用户体验的利器
c#·php·ux
暗流者3 天前
信息安全简要
开发语言·网络·php