📄 payonline.asp
字号:
strHiddenField = strHiddenField & "<input type='hidden' name='payerName' value='" & payerName & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='payerContactType' value='" & payerContactType & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='payerContact' value='" & payerContact & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='orderId' value='" & orderId & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='orderAmount' value='" & OrderAmount & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='orderTime' value='" & orderTime & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='productName' value='" & productName & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='productNum' value='" & productNum & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='productId' value='" & productId & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='productDesc' value='" & productDesc & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='ext1' value='" & ext1 & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='ext2' value='" & ext2 & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='payType' value='" & payType & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='bankId' value='" & bankId & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='redoFlag' value='" & redoFlag & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='pid' value='" & pid & "'>" & vbCrLf
Case 11 '快钱神州行
PayGateUrl = "https://www.99bill.com/szxgateway/recvMerchantInfoAction.htm"
Dim cardNumber, cardPwd, fullAmountFlag
merchantAcctId = v_mid '神州行网关账户号
key = MD5Key '设置人民币网关密钥
inputCharset = "3" '1代表UTF-8; 2代表GBK; 3代表gb2312
bgUrl = "" '服务器接受支付结果的后台地址
pageUrl = v_url '接受支付结果的页面地址
version = "v2.0" '网关版本.固定值
language = "1" '1代表中文;2代表英文
signType = "1" '签名类型.固定值
payerName = "" '支付人姓名
payerContactType = "" '支付人联系方式类型,1代表Email;2代表手机号
payerContact = "" '支付人联系方式,只能选择Email或手机号
orderId = v_oid '商户订单号
OrderAmount = v_amount * 100 '订单金额,以分为单位,必须是整型数字
orderTime = v_ymd & v_hms '订单提交时间
productName = "" '商品名称
productNum = "" '商品数量
productId = "" '商品代码
cardNumber = "" '神州行卡序号,仅在商户定制了神州行卡密直连功能时填写
productDesc = "" '商品描述
ext1 = "" '扩展字段1
ext2 = "" '扩展字段2
payType = "00" '只能选择00,代表支持神州行卡和快钱帐户支付
cardPwd = "" '神州行卡密码,仅在商户定制了神州行卡密直连功能时填写
'全额支付标志 ''0代表卡面额小于订单金额时返回支付结果为失败;1代表卡面额小于订单金额是返回支付结果为成功,同时订单金额和实际支付金额都为神州行卡的面额.如果商户定制神州行卡密直连时,本参数固定值为1
fullAmountFlag = "0" '0代表卡面额小于订单金额时返回支付结果为失败
''请务必按照如下顺序和规则组成加密串!
signMsgVal = appendParam(signMsgVal, "inputCharset", inputCharset)
signMsgVal = appendParam(signMsgVal, "bgUrl", bgUrl)
signMsgVal = appendParam(signMsgVal, "pageUrl", pageUrl)
signMsgVal = appendParam(signMsgVal, "version", version)
signMsgVal = appendParam(signMsgVal, "language", language)
signMsgVal = appendParam(signMsgVal, "signType", signType)
signMsgVal = appendParam(signMsgVal, "merchantAcctId", merchantAcctId)
signMsgVal = appendParam(signMsgVal, "payerName", payerName)
signMsgVal = appendParam(signMsgVal, "payerContactType", payerContactType)
signMsgVal = appendParam(signMsgVal, "payerContact", payerContact)
signMsgVal = appendParam(signMsgVal, "orderId", orderId)
signMsgVal = appendParam(signMsgVal, "orderAmount", OrderAmount)
signMsgVal = appendParam(signMsgVal, "payType", payType)
signMsgVal = appendParam(signMsgVal, "cardNumber", cardNumber)
signMsgVal = appendParam(signMsgVal, "cardPwd", cardPwd)
signMsgVal = appendParam(signMsgVal, "fullAmountFlag", fullAmountFlag)
signMsgVal = appendParam(signMsgVal, "orderTime", orderTime)
signMsgVal = appendParam(signMsgVal, "productName", productName)
signMsgVal = appendParam(signMsgVal, "productNum", productNum)
signMsgVal = appendParam(signMsgVal, "productId", productId)
signMsgVal = appendParam(signMsgVal, "productDesc", productDesc)
signMsgVal = appendParam(signMsgVal, "ext1", ext1)
signMsgVal = appendParam(signMsgVal, "ext2", ext2)
signMsgVal = appendParam(signMsgVal, "key", key)
md5string = UCase(MD5(signMsgVal, 32))
strHiddenField = strHiddenField & "<input type='hidden' name='inputCharset' value='" & inputCharset & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='bgUrl' value='" & bgUrl & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='pageUrl' value='" & pageUrl & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='version' value='" & version & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='language' value='" & language & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='signType' value='" & signType & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='merchantAcctId' value='" & merchantAcctId & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='payerName' value='" & payerName & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='payerContactType' value='" & payerContactType & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='payerContact' value='" & payerContact & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='orderId' value='" & orderId & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='orderAmount' value='" & OrderAmount & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='orderTime' value='" & orderTime & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='productName' value='" & productName & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='productNum' value='" & productNum & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='productId' value='" & productId & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='productDesc' value='" & productDesc & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='ext1' value='" & ext1 & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='ext2' value='" & ext2 & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='payType' value='" & payType & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='fullAmountFlag' value='" & fullAmountFlag & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='cardNumber' value='" & cardNumber & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='cardPwd' value='" & cardPwd & "'>" & vbCrLf
strHiddenField = strHiddenField & "<input type='hidden' name='signMsg' value='" & md5string & "'>" & vbCrLf
Case 13 '腾讯财付通
Dim transaction_id
transaction_id = v_mid & v_ymd & Right(v_oid, 10)
PayGateUrl = "https://www.tenpay.com/cgi-bin/v1.0/pay_gate.cgi"
md5string = UCase(MD5("cmdno=1&date=" & v_ymd & "&bargainor_id=" & v_mid & "&transaction_id=" & transaction_id & "&sp_billno=" & v_oid & "&total_fee=" & v_amount * 100 & "&fee_type=1&return_url=" & v_url & "&attach=my_magic_string&key=" & MD5Key, 32))
strHiddenField = strHiddenField & "<input type='hidden' name='cmdno' value='1'>" '业务代码,1表示支付
strHiddenField = strHiddenField & "<input type='hidden' name='date' value='" & v_ymd & "'>" '商户日期
strHiddenField = strHiddenField & "<input type='hidden' name='bank_type' value='0'>" '银行类型:财付通,0
strHiddenField = strHiddenField & "<input type='hidden' name='desc' value='" & v_oid & "'>" '交易的商品名称
strHiddenField = strHiddenField & "<input type='hidden' name='purchaser_id' value=''>" '用户(买方)的财付通帐户,可以为空
strHiddenField = strHiddenField & "<input type='hidden' name='bargainor_id' value='" & v_mid & "'>" '商家的商户号
strHiddenField = strHiddenField & "<input type='hidden' name='transaction_id' value='" & transaction_id & "'>" '交易号(订单号)
strHiddenField = strHiddenField & "<input type='hidden' name='sp_billno' value='" & PaymentNum & "'>" '商户系统内部的定单号
strHiddenField = strHiddenField & "<input type='hidden' name='total_fee' value='" & v_amount * 100 & "'>" '总金额,以分为单位
strHiddenField = strHiddenField & "<input type='hidden' name='fee_type' value='1'>" '现金支付币种,1人民币
strHiddenField = strHiddenField & "<input type='hidden' name='return_url' value='" & v_url & "'>" '接收财付通返回结果的URL
strHiddenField = strHiddenField & "<input type='hidden' name='attach' value='my_magic_string'>" '商家数据包,原样返回
strHiddenField = strHiddenField & "<input type='hidden' name='sign' value='" & md5string & "'>" 'MD5签名
End Select
%>
<form name='payonline' method='post' action='<%=PayGateUrl%>'>
<table class=center_tdbgall cellSpacing=0 cellPadding=0 width=760 align=center border=0>
<tr>
<td vAlign=top><table width="100%" border="0" cellpadding="2" cellspacing="1" class="Shop_border">
<tr>
<td align="center" class="Shop_title"><b>在 线 支 付 操 作</b>(第二步)</td>
</tr>
<tr>
<td class="Shop_tdbg">
<table width="400" border="0" align="center" cellpadding="2" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td colspan="2" align="center" bgcolor="#E6E6E6"><b>确 认 款 项</b></td>
</tr>
<tr>
<td width="100" align="right" bgcolor="#FFFFFF">支付序列号:</td>
<td width="289" align="center" bgcolor="#FFFFFF"><%=PaymentNum%></td>
</tr>
<tr>
<td width="100" align="right" bgcolor="#FFFFFF">支付金额:</td>
<td align="center" bgcolor="#FFFFFF">¥<%=FormatNumber(vMoney, 2, vbTrue, vbFalse, vbTrue)%></td>
</tr>
<tr>
<td width="100" align="right" bgcolor="#FFFFFF">手续费:</td>
<td align="center" bgcolor="#FFFFFF"><%=FormatNumber(Rate, 2, vbTrue, vbFalse, vbTrue) & "%"%></td>
</tr>
<tr>
<td width="100" align="right" bgcolor="#FFFFFF">实际划款金额:</td>
<td align="center" bgcolor="#FFFFFF">¥<%=v_amount%></td>
</tr>
<tr bgcolor="#E6E6E6">
<td colspan="2"> 点击“确认支付”按钮后,将进入<%=PlatformName%>支付界面,在此页面选择您的银行卡。</td>
</tr>
<tr align="center" bgcolor="#E6E6E6">
<td colspan="2"><input type="submit" id="Submit" value=" 确认支付 ">
<input type="button" name="Submit" value=" 取消支付 " onclick="window.location.href='../User/User_Payment.asp?Action=Cancel&PaymentID=<%=PaymentID%>'">
<%=strHiddenField%></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<tr>
<td class=main_shadow></td>
</tr>
</table>
</form>
<%
End Sub
Function GetPayPlatformList()
Dim rsPayPlatform, strList
Set rsPayPlatform = Conn.Execute("select * from PE_PayPlatform where IsDisabled=" & PE_False & " order by OrderID asc")
If rsPayPlatform.BOF And rsPayPlatform.EOF Then
strList = "没有启用任何在线支付平台"
Else
Do While Not rsPayPlatform.EOF
strList = strList & "<input type='radio' Name='PlatformID' value='" & rsPayPlatform("PlatformID") & "'"
If rsPayPlatform("IsDefault") = True Then strList = strList & "checked"
strList = strList & ">" & rsPayPlatform("ShowName") & "<br>"
If rsPayPlatform("Description") <> "" Then strList = strList & rsPayPlatform("Description") & "<br>"
rsPayPlatform.MoveNext
Loop
End If
Set rsPayPlatform = Nothing
GetPayPlatformList = strList
End Function
'将变量值不为空的参数组成字符串(快钱)
Function appendParam(returnStr, paramId, paramValue)
If returnStr <> "" Then
If paramValue <> "" Then
returnStr=returnStr&"&"¶mId&"="¶mValue
End If
Else
If paramValue <> "" Then
returnStr=paramId&"="¶mValue
End If
End If
appendParam = returnStr
End Function
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -