1

Ogone のテスト アカウントを持っていて、支払いシステムをテストしようとしています。テスト目的で、最小限のパラメーターで文字列を作成しました。

$ogoSHAstring = "AMOUNT=" . $amount . $signature . 
                "CURRENCY=" . $currency. $signature . 
                "LANGUAGE=" . $language . $signature . 
                "ORDERID=" . $orderId . $signature . 
                "PSPID=" . $pspId . $signature;

次のような文字列になります。

AMOUNT=990MySecretPassphrase!!CURRENCY=EURMySecretPassphrase!!LANGUAGE=nl_NLMySecretPassphrase!!ORDERID=67MySecretPassphrase!!PSPID=MyPSPIDMySecretPassphrase!!

ハッシュされるのはどれですか

1B8B605EAEF8E2FD9350958C0B152E22FD61FADB

送信されるフォームは次のようになります。

<form id='ogone' action='https://secure.ogone.com/ncol/test/orderstandard.asp' method='post'>
    <input type='hidden' name='AMOUNT' value='$amount' />
    <input type='hidden' name='CURRENCY' value='$currency' />
    <input type='hidden' name='LANGUAGE' value='$language' />
    <input type='hidden' name='ORDERID' value='$orderId' />
    <input type='hidden' name='PSPID' value='$pspId' />
    <input type='hidden' name='SHASIGN' value='$ogoSHAsign' />
</form>

しかし、私はエラーが発生し続けます:

unknown order/1/r/

これらは私の設定です:

ここに画像の説明を入力 ここに画像の説明を入力

助けはありますか?

4

1 に答える 1

11

エラーが発生した場合、unknown order/1/r/これは SHA 計算が原因ではありません。参照URLによるものです。タブで設定したようにData and origin verification、フォームは から Ogone を呼び出す必要がありますhttp://www.someurl.com/php/ogone.php

そして、別の URL からそれらを呼び出していると思います。したがって、テスト中は設定画面からリファラー URL を削除することをお勧めします。または、実際に使用しているものを使用してください。

SHA エラーが発生した場合は、unknown order/1/s/エラーが発生します。

最後に、フォームも正しくありません。echoPHP 変数名を実際に'ing するのではなく、フォームに記述しているだけです。次のように変更します。

<form id='ogone' action='https://secure.ogone.com/ncol/test/orderstandard.asp' method='post'>
    <input type='hidden' name='AMOUNT' value='<?=$amount?>' />
    <input type='hidden' name='CURRENCY' value='<?=$currency?>' />
    <input type='hidden' name='LANGUAGE' value='<?=$language?>' />
    <input type='hidden' name='ORDERID' value='<?=$orderId?>' />
    <input type='hidden' name='PSPID' value='<?=$pspId?>' />
    <input type='hidden' name='SHASIGN' value='<?=$ogoSHAsign?>' />
</form>
于 2013-01-30T10:18:03.767 に答える