支付寶集成時,需要三大步:
1、通過表單提交信息,系統整合信息,提交信息到支付寶;
2、用戶進行支付後,支付寶後臺通知系統處理;
3、支付寶後臺通知完成後,支付寶前臺跳轉到系統返回地址;
支付寶PHP類
PHP 類alipay_notify,主要功能是付款過程中服務器通知處理。
PHP 類alipay_service,根據支付寶外部服務接口生成支付寶地址。
我把這2個類,集中到壹個文件alipay.class.inc中,點擊這裏查看並下載PHP支付寶類源碼。
下面主要主要講解通過支付寶的PHP類來實現整合。
PHP支付寶集成
第壹步,建立提交充值的基本信息:
zhifubao-chongzhi PHP支付寶集成 建立提交充值的基本信息
第二步,驗證用戶提交的金額正確,通過表單驗證後,通過支付寶alipay_service類生成支付寶鏈接,然後跳轉到支付寶鏈接。
function index() {
$total = intval($_POST['total']);
if (!$total) {
$total = 1;
}
$pay_bank = trim($_POST['pay_bank']);
$account = $_POST['_account'];
$base_path = ‘’;
$_input_charset = "UTF-8";
$sign_type = "MD5"; //簽名方式
$transport = ‘’;
$sign_type = "MD5";
$_input_charset = ‘UTF-8′;
$transport = ‘’;
$sign_type = "MD5";
$_input_charset = ‘UTF-8′;
$transport = ‘https’;
require("../libraries/payment/alipay.class.inc");
$alipay = new alipay_notify($partner,$security_code,$sign_type,$_input_charset,$transport);
$verify_result = $alipay->return_verify();
$order_id = $_GET['out_trade_no']; //獲取訂單號
$total_fee = (int) $_GET['total_fee']; //獲取總價格
$txn_id = explode(‘-’, $order_id);
$real_orderid = $txn_id[0]; //get the real order
$sid = $txn_id[1];
//認證合格
if($verify_result) {
$output = ‘<h2>恭喜您,學員ID’.$sid.’充值’.$total_fee.’元成功!</h2>’;
$student = mysql_query("SELECT uid, balance FROM {student} WHERE sid = %d", $sid);
$output .= ‘<p>您目前的余額’.$student->balance.’元。</p>’;
$output .= l(‘查看記錄’, ‘user/’.$student->uid.’/depositlogs’);
return $output;
}
else {
$output = ‘<h2>妳的訂單支付過程出現故障!</h2>’;
$output .= ‘<p>您的交易信息是無效的,如果妳使用的是已有的返回信息的話,那麽交易已經成立,妳可以查看我的訂單歷史。<br>如果妳是黑客的話,俺是守法的好公民,希望妳能饒了我這個小店。’;
$output .= ‘</p><p><a href="/">返回首頁</a></p>’;
return $output;
}
}
如果用戶是惡意修改網址參數,將會看到:
callback return failed 如果用戶是惡意修改網址參數
如果用戶正常通過支付寶自動跳轉回來的,將會看到:
callback return success 如果用戶正常通過支付寶自動跳轉回來的
好的,趕快將以上方法和代碼應用到妳的積分、賬戶余額系統把!