Paybox input et variable
Posté : 17 oct. 2012, 20:25
Bonjour,
J'essais de mettre en place une solution de paiement en ligne Paybox.
Je fais donc d'abord quelques tests.
Voici le code :
Le support Paybox m'a informé succinctement que l'erreur vient de la valeur de PBX_HMAC qui serait <?php echo $hmac; ?> ???
Pour info, si je remplace, en dur, les value de PBX_TIME et de PBX_HMAC le serveur répond, après avoir décomposé la partie php pour recupérer les bonnes valeur de $msg, $dateTime et $hmac. Ce qui valide mon serveur (et celui de paybox)
Paybox m'a confirmé la bonne syntaxe de la page.
J'ai installé la page sur 2 serveurs différents, idem.
Mes questions sont, s'il vous plaît :
- y-a-t'il un moyen de récupérer ce qui est envoyé au serveur, ce qui est généré par le POST, pour l'analyser ?
- est-il possible d'écrire tout cela autrement ?
- vos autres suggestions… ?
- une piste…
3 jours que je suis dessus et des dizaines de tests plus loin, là maintenant, je ne sais vraiment plus quoi essayer…
Help !!
Merci
JC
J'essais de mettre en place une solution de paiement en ligne Paybox.
Je fais donc d'abord quelques tests.
Voici le code :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Page de test Paybox - AI</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<h2>Page de test Paybox - AI</h2>
<?php
$dateTime= date("c");
$msg="PBX_SITE=1999888".
"&PBX_RANG=32".
"&PBX_IDENTIFIANT=110647233".
"&PBX_TOTAL=1000".
"&PBX_DEVISE=978".
"&PBX_CMD=TEST".
"&[email protected]".
"&PBX_RETOUR=Mt:M;Ref:R;Auto:A;Erreur:E".
"&PBX_HASH=SHA512".
"&PBX_TIME=$dateTime";
$keyTest="0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF";
$binKey = pack("H*", $keyTest);
$hmac= strtoupper(hash_hmac('sha512', $msg, $binKey));
?>
<form method="POST" action="https://preprod-tpeweb.paybox.com/cgi/MYchoix_pagepaiement.cgi">
<input type="hidden" name="PBX_SITE" value="1999888" />
<input type="hidden" name="PBX_RANG" value="32" />
<input type="hidden" name="PBX_IDENTIFIANT" value="110647233" />
<input type="hidden" name="PBX_TOTAL" value="1000" />
<input type="hidden" name="PBX_DEVISE" value="978" />
<input type="hidden" name="PBX_CMD" value="TEST" />
<input type="hidden" name="PBX_PORTEUR" value="[email protected]" />
<input type="hidden" name="PBX_RETOUR" value="Mt:M;Ref:R;Auto:A;Erreur:E" />
<input type="hidden" name="PBX_HASH" value="SHA512" />
<input type="hidden" name="PBX_TIME" value="<?php echo $dateTime; ?>" />
<input type="hidden" name="PBX_HMAC" value="<?php echo $hmac; ?>" />
<input type="submit" value="Envoyer" />
</form>
</body>
</html>
En retour le serveur m'envoi un message d'erreur.Le support Paybox m'a informé succinctement que l'erreur vient de la valeur de PBX_HMAC qui serait <?php echo $hmac; ?> ???
Pour info, si je remplace, en dur, les value de PBX_TIME et de PBX_HMAC le serveur répond, après avoir décomposé la partie php pour recupérer les bonnes valeur de $msg, $dateTime et $hmac. Ce qui valide mon serveur (et celui de paybox)
Paybox m'a confirmé la bonne syntaxe de la page.
J'ai installé la page sur 2 serveurs différents, idem.
Mes questions sont, s'il vous plaît :
- y-a-t'il un moyen de récupérer ce qui est envoyé au serveur, ce qui est généré par le POST, pour l'analyser ?
- est-il possible d'écrire tout cela autrement ?
- vos autres suggestions… ?
- une piste…
3 jours que je suis dessus et des dizaines de tests plus loin, là maintenant, je ne sais vraiment plus quoi essayer…
Help !!
Merci
JC