标签:
原文链接:http://my.oschina.net/rain21/blog/496780
URL生成:
<?php $parameter = array( ‘service‘ => ‘create_forex_trade‘, ‘partner‘ => ‘2088101122136241‘, ‘_input_charset‘ => strtolower(‘utf-8‘), ‘notify_url‘ => ‘http://wsy.zy62.com/alipay/notify_url.php‘, ‘return_url‘ => ‘http://wsy.zy62.com/alipay/return_url.php‘, /* 业务参数 */ ‘subject‘ => ‘付款余额‘, ‘out_trade_no‘ => sprintf("%s-%s",$client_id,date("YmdHis")), ‘total_fee‘ => ‘0.01‘, ‘currency‘ => "USD" ); ksort($parameter); reset($parameter); $param = ‘‘; $sign = ‘‘; foreach ($parameter AS $key => $val) { $param .= "$key=" .urlencode($val). "&"; $sign .= "$key=$val&"; } $param = substr($param, 0, -1); $sign = substr($sign, 0, -1). ‘760bdzec6y9goq7ctyx96ezkz78287de‘; $button = ‘<div style="text-align:center"><input type="button" onclick="window.open(\‘https://mapi.alipay.net/gateway.do?‘.$param. ‘&sign=‘.md5($sign).‘&sign_type=MD5\‘)" value="‘ .‘确定‘. ‘" /></div>‘; echo $button;
验证异步回调
<?php $json=‘{"notify_id":"8cc4f9dca6ac0bdcc944b0cd51ce41292l","notify_type":"trade_status_sync","sign":"6aa07c5e5119eebc22d5fd9af78e39e1","trade_no":"2015082500001000100080033805","total_fee":"0.01","out_trade_no":"20150825092330","currency":"USD","notify_time":"2015-08-25 09:25:03","trade_status":"TRADE_FINISHED","sign_type":"MD5"}‘; $_POST=json_decode($json,true); if (!empty($_POST)) { foreach($_POST as $key => $data) { $_GET[$key] = $data; } } /* 检查数字签名是否正确 */ ksort($_GET); reset($_GET); $sign = ‘‘; foreach ($_GET AS $key=>$val) { if ($key != ‘sign‘ && $key != ‘sign_type‘ && $key != ‘code‘) { $sign .= "$key=$val&"; } } $sign = substr($sign, 0, -1) . ‘760bdzec6y9goq7ctyx96ezkz78287de‘; if (md5($sign) != $_GET[‘sign‘]) { return false; }else{ return true; }
标签:
原文地址:http://my.oschina.net/rain21/blog/496780