我目前正在實施一個信用卡處理腳本,大部分由商家網關提供。代碼調用類中的函數,並根據響應返回一個字符串。結束PHP代碼我使用(細節當然已移除)的信息。例如是:幫助CC處理腳本
<?php
$gw = new gwapi;
$gw->setLogin("username", "password");
$gw->setBilling("John","Smith","Acme, Inc.","888","Suite 200", "Beverly Hills",
"CA","77777","US","555-555-5555","555-555-5556","[email protected]",
"www.example.com");
// "CA","90210","US","[email protected]");
$gw->setOrder("1234","Big Order",1, 2, "PO1234","65.192.14.10");
$r = $gw->doSale("1.00","4111111111111111","1010");
print $gw->responses['responsetext'];
?>
其中setlogin允許我登錄,setbilling取樣品的消費者信息,設定爲了採取訂單ID和描述,dosale取收取的金額,cc號和exp日期。
當所有的變量被髮送驗證然後被髮送關閉處理,字符串被返回以下列格式:
響應= 1周&的responseText = SUCCESS & AUTHCODE = 123456 &的transactionId = 23456 & avsresponse =中號&訂單ID = &類型=出售& RESPONSE_CODE = 100
其中:
- 響應=交易批准或 下降
- 響應文本=文本響應
- AUTHCODE =交易授權 代碼
- 的transactionId =支付網關TRAN ID
- avsresponse = AVS響應代碼
- orderid =傳入的原始訂單ID 轉請求
- RESPONSE_CODE =數字測繪 處理器響應
的我試圖解決以下:
- 如何拍攝這是 傳回並顯示它 頁面上恰當的數據 - 如果 交易失敗或AVS編碼 犯規符合我的喜好或東西 是錯誤的,錯誤顯示給 消費者;如果交易 處理,他們被帶到一個 完成頁面,如果RESPONSE_CODE值相匹配的 表值的交易 ID在會話中發送的輸出 消費者
- ,某些動作 拍攝,即如果代碼= 100,採取 成功頁面,如果代碼= 300打印 特定錯誤原始頁面上 客戶等
我有點害怕,一個程序員無法弄清楚如何解析字符串正在處理信用卡信息。 – 2010-05-18 20:15:44
@Matti - 感謝您的信任。我爲一個組織工作,該組織幫助我達到了PCI合規性,並在過去的三年中從事項目管理/產品開發工作。我們讓我們的一些編程團隊去,並且我幫助我們的一個合作伙伴網站運行。也許不是侮辱我,你可以提供最佳實踐或任何以前的經驗的指導,因爲你的評論對這個問題沒有任何影響 – JM4 2010-05-18 20:20:34
而且對於那個曲調 - 關於S.O.最流行的問題之一。這就是爲什麼'新手'程序員害怕推進他們的技術,並因爲這樣的答案。高級程序員對待新人就像他們很愚蠢。如果這個論壇只是針對高級問題,那麼他們應該在早期就把它作爲一個標準。 – JM4 2010-05-18 20:22:36