SagePay表格 - 经典ASP - 货币字段使用rijndael.asp失踪 [英] SagePay Form - Classic ASP - Currency Field is missing using rijndael.asp

查看:255
本文介绍了SagePay表格 - 经典ASP - 货币字段使用rijndael.asp失踪的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想添加表单一体化SagePay支付网关在传统的ASP。我有我从SO采购工作的PHP版本。我已经翻译成VBSCRIPT,一切似乎都工作正常,但加密。

I am trying to add the Form Intergration SagePay payment gateway in Classic ASP. I have a working PHP version that I sourced from SO. I have translated it into VBSCRIPT, everything seems to be working fine but the encryption.

我使用所有相同的输入PHP脚本,使得Cryptstring是完全一样的PHP Cryptstring它是加密了。

I am using all the same inputs as the PHP script so that the Cryptstring is exactly the same as the PHP Cryptstring before it is encrypted.

我已经下载并使用Rijndael.asp&放大器; includes.asp这里找到文件:<一href=\"http://stackoverflow.com/questions/25025330/encrypting-crypt-field-using-classic-asp-for-sagepay-form-integration\">Encrypting使用传统的ASP为SagePay形式集成地穴领域

I've downloaded and using the Rijndael.asp & includes.asp files found here: Encrypting Crypt field using Classic ASP for SagePay Form Integration

但我继续收到以下错误:

But I continue to receive the following error:


Status: MALFORMED
Status Detail:  3045 : The Currency field is missing.

Cryptstring: VendorTxCode=542534345&ReferrerID=&Amount=200.00&Currency=GBP
&Description=Lorem ipsum&SuccessURL=http://www.testserver.co.uk/sagepaytest/success.php
&FailureURL=https://www.yoururl.org/fail.php&CustomerName=&CustomerEMail=&VendorEMail=
&SendEMail=&eMailMessage=&BillingSurname=Mustermann&BillingFirstnames=Max
&BillingAddress1=Bahnhofstr. 1&BillingAddress2=&BillingCity=Cologne&BillingPostCode=50650
&BillingCountry=DE&BillingState=&BillingPhone=&DeliverySurname=Mustermann
&DeliveryFirstnames=Max&DeliveryAddress1=Bahnhofstr. 1&DeliveryAddress2=
&DeliveryCity=Cologne&DeliveryPostCode=50650&DeliveryCountry=DE&DeliveryState=
&DeliveryPhone=&Basket=&AllowGiftAid=&ApplyAVSCV2=&Apply3DSecure=&BillingAgreement=
&BasketXML=&CustomerXML=&SurchargeXML=&VendorData=&ReferrerID=&Language=&Website=

我试着手动添加某些领域进入地穴串,我试图GET花药页面没有加密,以查看完整的输出。

I've tried manually adding certain fields into the crypt string, I've tried GET to anther page without the encryption to view the full output.

我的加密密码是正确的,我已经双重和三重检查它。它在includes.php文件中输入。

My encryption password is correct, I've double and triple checked it. Its entered in the includes.php file.

的index.asp

index.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>

<!-- #include file="classes/includes.asp" -->

<!-- #include file="classes/sagepay.asp" -->

<% Set objSagePay=new SagePay %>

<% objSagePay.setCurrency("GBP") %>
<% objSagePay.setAmount(200) %>
<% objSagePay.setDescription("Lorem ipsum") %>
<% objSagePay.setBillingSurname("Mustermann") %>
<% objSagePay.setBillingFirstnames("Max") %>
<% objSagePay.setBillingCity("Cologne") %>
<% objSagePay.setBillingPostCode("50650") %>
<% objSagePay.setBillingAddress1("Bahnhofstr. 1") %>
<% objSagePay.setBillingCountry("de") %>
<% objSagePay.setDeliverySameAsBilling() %>

<% objSagePay.setSuccessURL("http://www.testserver.co.uk/sagepaytest/success.php") %>
<% objSagePay.setFailureURL("https://www.yoururl.org/fail.php") %>

<% Crypt=objSagePay.getCrypt() %>
<%= Crypt %>

<div id="content">
  <form method="POST" id="SagePayForm" action="https://test.sagepay.com/gateway/service/vspform-register.vsp">
  <input type="hidden" name="VPSProtocol" value= "3.00">
  <input type="hidden" name="TxType" value= "PAYMENT">
  <input type="hidden" name="Vendor" value= "vendorname">
  <input type="hidden" name="Crypt" value= "<%= objSagePay.getCrypt() %>">
  <input type="submit" value="continue to SagePay">
</form>


任何指导,将AP preciated。


Any guidance would be appreciated.

推荐答案

我在同一条船上。我可以加密和完全相同的结果完全解密,但是当它被传递给Sagepay我得到的错误 - 货币字段缺失。

I'm in the same boat. I can encrypt and decrypt perfectly with exactly the same results but when it is passed to Sagepay I get the error - Currency field is missing.

更新:我设法解决这个错误。请确保您更改现有行'includes.asp

Update: I have managed to solve this error. Make sure in the 'includes.asp' that you change the existing line:

strEncryptionPassword="mcAX65PTadrrsKQ3"

要包含在你原来的Sagepay'includes.asp'文件的密码。不要使用与在您的文章下载链接的默认密码。

to include the password that is in your original Sagepay 'includes.asp' file. Do not use the default password that comes with the download link in your post.

这篇关于SagePay表格 - 经典ASP - 货币字段使用rijndael.asp失踪的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆