thinkphp3.2.3 verbindet sich mit der neuen Version von Alipay
二当家的
二当家的 2017-08-31 18:25:04
0
2
1486

Das Effektbild ist wie folgt:

Die neue Version der Alipay-Signaturprüfung ist gekapselt und muss nur noch konfiguriert und aufgerufen werden.

public function pay(){
        //商户订单号,商户网站订单系统中唯一订单号,必填
        $out_trade_no = '27201'.date('YmdHis',time());
        //订单名称,必填
        $proName = trim($_POST['WIDsubject']);
        //付款金额,必填
        $total_amount = '0.01';//trim($_POST['WIDtotal_amount']);
        //商品描述,可空
        $body = '27201';//trim($_POST['WIDbody']);
        Vendor('Alipay.aop.AopClient');
        Vendor('Alipay.aop.request.AlipayTradePagePayRequest');
        //请求
        $c = new \AopClient();
        $config = C('alipay');
        $c->gatewayUrl = "https://openapi.alipay.com/gateway.do";
        $c->appId = $config['app_id'];
        $c->rsaPrivateKey = $config['merchant_private_key'];
        $c->format = "json";
        $c->charset= "UTF-8";
        $c->signType= "RSA2";
        $c->alipayrsaPublicKey = $config['alipay_public_key'];
        $request = new \AlipayTradePagePayRequest();
        $request->setReturnUrl($config['return_url']);
        $request->setNotifyUrl($config['notify_url']);
        $request->setBizContent("{" .
            "    \"product_code\":\"FAST_INSTANT_TRADE_PAY\"," .
            "    \"subject\":\"$proName\"," .
            "    \"out_trade_no\":\"$out_trade_no\"," .
            "    \"total_amount\":$total_amount," .
            "    \"body\":\"$body\"" .
            "  }");
        $result = $c->pageExecute ($request);
        $model = M('c_house_order');
        $data = array(
            'product_name'=>$proName,
            'order_num'=>$out_trade_no,
            'total_amount'=>$total_amount,
            'description'=>$body,
            'user_id'=>1,
            'add_time'=>NOW_TIME,
            'up_time'=>NOW_TIME
        );
        $model->add($data);
        //输出
        echo $result;
    }


Schreiben Sie für die asynchrone Benachrichtigung die Logik direkt in Ihre asynchrone Benachrichtigungsmethode, verwenden Sie $_POST, um die von Alipay übergebenen Parameter zu empfangen, und führen Sie die entsprechende Datenbankeinfügung oder -aktualisierung durch.


二当家的
二当家的

Antworte allen(2)
猪哥

不错   不错   不错   不错   不错   不错   不错   不错   不错   不错   不错   

Ty80

写的不错  学编程就来PHP中文网

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage