php - 2checkout 总是返回哈希不匹配

标签 php hash 2checkout

我正在使用 2co 沙箱来测试这样的销售。

<form method="post" action="https://sandbox.2checkout.com/checkout/purchase">
    <input type="hidden" value="myAccountNumber" name="sid">
    <input type="hidden" value="2CO" name="mode">
    <input type="hidden" value="product" name="li_0_type">
    <input type="hidden" value="Subscription" name="li_0_name">
    <input type="hidden" value="50.00" name="li_0_price">
    <input type="hidden" value="N" name="li_0_tangible">
    <input type="hidden" value="USD" name="currency_code">
    <input type="submit" value="Checkout" name="submit">
</form>

我有这段代码来处理重新调整代码

$hashSecretWord = 'testsecretword';  //copied from sandbox account
$hashSid = 'myAccountNumber'; 
$hashTotal = '50.00'; 
$hashOrder = $_REQUEST['order_number'];
echo $_REQUEST['key']."<br>";
echo $StringToHash = strtoupper(md5($hashSecretWord . $hashSid . $hashOrder . $hashTotal));

网址

http://www.domain.com/ipn.php?middle_initial=&li_0_name=Subscription&sid=mySameAccountNumber
&key=CBB0C2CA27FDAC5E3316161D829BAF66&state=test&email=test@test.com&li_0_type=product
&order_number=9093725652885&currency_code=USD&lang=en&invoice_id=9093725652894&li_0_price=50.00
&total=50.00&credit_card_processed=Y&zip=0000&li_0_quantity=1&cart_weight=0&fixed=Y
&submit=Checkout //then other buyer information

但它们完全不同,我得到哈希不匹配错误

最佳答案

在沙箱中你应该使用 '1' 而不是像这样的 $hashOrder:

$StringToHash = strtoupper(md5($hashSecretWord . $hashSid . 1 . $hashTotal));

关于php - 2checkout 总是返回哈希不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33779118/

相关文章:

php - 为mysql表选择一个索引

php - 用户没有任何 Google Analytics 帐户

hash - Python 与 STM32 内置 HASH 设备中的 SHA256 摘要不一致

Mysql – 使用表的一部分的散列函数检测数据的变化

javascript - 使用复选框删除 lastIndexOf url

php - 从 php、twig 中的 for 循环迭代中提取整数

php - Sql - 仅在列的第一个空单元格中插入值

mysql - 我如何像 asp.net identity 一样手动散列密码

javascript - 导致 IE 中出现问题的表单名称属性

api - 2Checkout API - 定期付款是否有与之关联的定期 ID?