多年搬家經驗,合理公開化價格,貼心服務 專業、敬業精神,深獲顧客讚賞及肯定! | 多年搬家經驗,合理公開化價格,貼心服務 專業、敬業精神,深獲顧客讚賞及肯定! |
[測試]test |
房東:test 發表時間:2014-05-30 | [檢舉] |
超商代碼串接範例 1. 超商代碼CVS取號 $key = \" Allpay所提供AES加解密用的key \"; $iv = \" Allpay所提供AES加解密用的iv \"; /*根據您的繳費方式輸入固定參數 (全家、OK、萊爾富超商代碼付款則填CVS_CVS;7-11超商代碼付款則填CVS_IBON;超商條碼付款則填BARCODE_BARCODE)*/ $PaymentType = \"CVS_CVS\"; //廠商編號 $MerchantID=\'1234567\'; //廠商交易編號(不可重複)。 $MerchantTradeNo = \'100\'; //廠商交易時間。 $MerchantTradeDate = date(\'Y/m/d h:i:s\'); //交易金額 30~20,000。 $TradeAmount = \'500\'; //需與PaymentType相同。 $TradeType = \'CVS_CVS\'; //交易描述(必填),要使用UTF8格式進行urlencode。 $TradeDesc=urlencode(\'必填交易描述\'); //交易描述(Desc1~Desc4),要使用UTF8格式進行urlencode。 $Desc1=urlencode(\'選填交易描述\'); $Desc2=urlencode(\'選填交易描述\'); $Desc3=urlencode(\'選填交易描述\'); $Desc4=urlencode(\'選填交易描述\'); //付款成功\通知的網址,要使用UTF8格式進行urlencode。 $ReplyURL=urlencode(\'http://付款成功\要通知的網址\'); //備註,可空白 $Remark=\'備註,可空白\'; //欲傳遞的參數要組成xml,建立xml_base Function function xml_base() { $xml = \" //為避免產生的xml檔案包含空白、斷行,所以要進行斷行、空白刪除動作 $xml = trim($xml); $xml = str_replace(\"\\t\", \"\", $xml); $xml = str_replace(\"\\r\\n\", \"\", $xml); $xml = str_replace(\"\\r\", \"\", $xml); $xml = str_replace(\"\\n\", \"\", $xml); $xml = str_replace(\" \", \"\", $xml); //在建立好的xml檔案上頭加上版本與語系 $xml = \"\" . $xml; return $xml; } //Padding PKCS7的Function function addpadding($string, $blocksize = 16) { $len = strlen($string); $pad = $blocksize - ($len % $blocksize); $string .= str_repeat(chr($pad), $pad); return $string; } //AES與base64編碼 之加密Function function encrypt($inputValue, $key, $iv) { $str = trim(base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, addpadding($inputValue), MCRYPT_MODE_CBC, $iv))); return $str; } //呼叫xml_base Function $XMLData = xml_base(); /*將[+++MerchantID+++]替換成$MerchantID, 才能夠將要傳送的值放入function後產生正確的XMLData*/ $XMLData= str_replace(\"[+++MerchantID+++]\", $MerchantID, $XMLData); $XMLData= str_replace(\"[+++MerchantTradeNo+++]\", $MerchantTradeNo, $XMLData); $XMLData= str_replace(\"[+++MerchantTradeDate+++]\", $MerchantTradeDate, $XMLData); $XMLData= str_replace(\"[+++TradeAmount+++]\", $TradeAmount, $XMLData); $XMLData= str_replace(\"[+++TradeType+++]\", $TradeType, $XMLData); $XMLData= str_replace(\"[+++TradeDesc+++]\", $TradeDesc, $XMLData); $XMLData= str_replace(\"[+++Desc_1+++]\", $Desc_1, $XMLData); $XMLData= str_replace(\"[+++Desc_2+++]\", $Desc_2, $XMLData); $XMLData= str_replace(\"[+++Desc_3+++]\", $Desc_3, $XMLData); $XMLData= str_replace(\"[+++Desc_4+++]\", $Desc_4, $XMLData); $XMLData= str_replace(\"[+++ReplyURL+++]\", $ReplyURL, $XMLData); $XMLData= str_replace(\"[+++Remark+++]\", $Remark, $XMLData); //進行加密 $encode_XMLData = encrypt($XMLData, $key, $iv); //將要傳送的PaymentType、MerchantID、加密過的XMLData組成一字串 $post_str = \'PaymentType=\' . $PaymentType . \'&MerchantID=\' . $MerchantID . \'&XMLData=\' . $encode_XMLData; //到介接網址用curl 背景取號,使用get方式 $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, \'http://pay.allpay.com.tw/payment/Srv/gateway?\' . $post_str); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); $print = curl_exec($ch); //關閉curl curl_close($ch); //印出取得的資料 print_r($print); ?> 2. 付款通知 //Padding PKCS7解密 function strippadding($string) { $slast = ord(substr($string, -1)); $slastc = chr($slast); $pcheck = substr($string, -$slast); if (preg_match(\"/$slastc{\" . $slast . \"}/\", $string)) { $string = substr($string, 0, strlen($string) - $slast); return $string; } else { return false; } } //xml解密 function decrypt($sValue, $key, $iv) { $sValue = str_replace(\' \', \'+\', $sValue); $str = strippadding(mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key,base64_decode($sValue),MCRYPT_MODE_CBC, $iv)); return $str; } $key = \" Allpay所提供AES加解密用的key \"; $iv = \" Allpay所提供AES加解密用的iv\"; //接收資料 $XMLData = $_POST[\"XMLData\"]; //解密資料 $rs = decrypt($XMLData,$key,$iv); //回傳結果解密 $result_data = simplexml_load_string($rs); //顯示資料 echo \"廠商編號: \" . (string) $result_data->Data->MerchantID . \" \"; echo \"廠商交易編號: \" . (string) $result_data->Data-> MerchantTradeNo. \" \"; echo \"交易狀態: \" . (string) $result_data->Data->RtnCode . \" \"; echo \"交易訊息: \" . (string) $result_data->Data->RtnMsg. \" \"; echo \"AllPay交易編號: \" . (string) $result_data->Data-> TradeNo. \" \"; echo \"付款時間: \" . (string) $result_data->Data-> PayDate. \" \"; echo \"交易金額: \" . (string) $result_data->Data-> TradeAmount . \" \"; echo \"繳費代碼: \" . (string) $result_data->Data-> PaymentNo . \" \"; echo \"繳費超商: \" . (string) $result_data->Data-> PayFrom . \" \"; ?> 3. 交易查詢作業(Web Service) $key = \" Allpay所提供AES加解密用的key\"; $iv = \" Allpay所提供AES加解密用的iv\"; //廠商編號。 $MerchantID = \'1234567\'; //要查詢的廠商交易編號(不可重複)。 $MerchantTradeNo = \'100\'; //要查詢的web service位址。 $url=\'https://pay.allpay.com.tw/merchantapi/cvs.asmx \'; //Padding PKCS7 的Function function addpadding($string, $blocksize = 16) { $len = strlen($string); $pad = $blocksize - ($len % $blocksize); $string .= str_repeat(chr($pad), $pad); return $string; } //AES與base64編碼之加密Function function encrypt($inputValue, $key, $iv) { $str = trim(base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, addpadding($inputValue), MCRYPT_MODE_CBC, $iv))); return $str; } //將廠商交易編號加密 $Encode_MerchantTradeNo = encrypt($MerchantTradeNo, $key, $iv); //透過curl方式傳送資料 $ch = curl_init(); /*由於必須傳送soap xml格式的資料,所以先用$PostData將要傳送的參數組成soap格式的xml。可進入web service位址查看soap 格式的xml寫法*/ $PostData=\" // 設定擷取的URL網址 curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //設定CURLOPT_POST 為 1或true,表示要用POST方式傳遞 curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_HTTPHEADER, array( \'Accept-Language:zh-tw\', \'charset=utf-8\', \'Content-Type:application/soap+xml\', \'Host:pay.allpay.com.tw\', )); //CURLOPT_POSTFIELDS 後面則是要傳接的POST資料。 curl_setopt($ch, CURLOPT_POSTFIELDS, $PostData); $temp=curl_exec($ch); // 關閉CURL連線 curl_close($ch); //印出查詢結果 print_r($temp); ?> 4. 交易查詢作業(Html Form post) $key = \" Allpay所提供AES加解密用的key \"; $iv = \" Allpay所提供AES加解密用的iv \"; $MerchantID = \'1234567\'; //廠商編號 $MerchantTradeNo = \'100\'; //廠商交易編號 $url=\'http://pay.allpay.com.tw/payment/cvsquery\'; //Padding PKCS7的 Function function addpadding($string, $blocksize = 16) { $len = strlen($string); $pad = $blocksize - ($len % $blocksize); $string .= str_repeat(chr($pad), $pad); return $string; } //AES與base64編碼加密 Function function encrypt($inputValue, $key, $iv) { $str = trim(base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, addpadding($inputValue), MCRYPT_MODE_CBC, $iv))); return $str; } //將廠商交易編號加密 $Encode_MerchantTradeNo = encrypt($MerchantTradeNo, $key, $iv); //以Form post的方式傳送資料到介接網址 $p = \" \"; echo $p; ?> 5. 查詢超商條碼網址(用於付款方式為Barcode) $key = \" Allpay所提供AES加解密用的key \"; $iv = \" Allpay所提供AES加解密用的iv \"; //廠商編號 $MerchantID = \'1234567\'; //廠商交易編號 $MerchantTradeNo = \'100\'; //要查詢的網址 $url=\'https://pay.allpay.com.tw/barcode/getbarcode\'; //Padding PKCS7的Function function addpadding($string, $blocksize = 16) { $len = strlen($string); $pad = $blocksize - ($len % $blocksize); $string .= str_repeat(chr($pad), $pad); return $string; } //AES與base64編碼加密 Function function encrypt($inputValue, $key, $iv) { $str = trim(base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, addpadding($inputValue), MCRYPT_MODE_CBC, $iv))); return $str; } //將廠商交易編號加密 $Encode_MerchantTradeNo = encrypt($MerchantTradeNo); //用form post傳送到位址 $p = \" \"; echo $p; ?> |
搬家公司 本公司為政府立案專業搬家公司,我們秉持客戶至上,正派經營理念,在大台北縣市一直有口碑 租屋網 提供租屋資訊、租屋廣告刊登、房屋託租、房客尋屋、租屋配對、電子地圖、房屋資料上傳 明日黃金屋 買屋、賣屋、租屋、出租、房東租屋刊登、並提供租屋、最專業的服務、最安全親切的交易。 |