Bonjour,
Récemment j'ai fait passer le site d'un client de PHP 5.2.17 en 5.3.13 par l'hébergeur. S'il n'y a pas eu de dysfonctionnements particuliers sur le site lui-même, j'ai constaté quelques soucis sur le moyen de paiement SIPS d'ATOS.
En effet le fait de changer de version PHP chez Infomaniak a fait passer le système de 32bits en 64bits, il a donc fallu que je remplace les binaires ATOS par les versions 64 bits. Je ne étais pas rendu compte immédiatement de ce changement et je me demandais pourquoi le paiement par carte bancaire SIPS ne fonctionnait plus (Mercanet).
De même, comme Infomaniak ne supporte pas les fonctions exec() présentes dans les scripts du plugin ATOS, j'avais précédemment dû les modifier pour pouvoir exécuter les binaires via un script Perl CGI, et cela fonctionnait très bien. Depuis le passage en PHP 5.3.13 et plateforme 64bits j'ai dû faire quelques modifs dans ces scripts Perl, sans conséquences.
Néanmoins après divers tests infructueux (avant de comprendre l'histoire du 64 bits et déceler le problème dans mes scripts Perl), et lorsque tout s'est mis à refonctionner normalement, j'ai constaté en effectuant un achat sur le site que je recevais bien la notification de commande créée mais pas celle du paiement confirmée (le statut de commande étant resté sur "créée").
Je suppose évidemment que si je passe la commande sur "confirmée" je recevrais l'émail, mais la question est : Pourquoi le statut de commande n'est-il pas passé sur "confirmée" alors que j'ai eu à l'écran la récap de la transaction ?
- id marchand,
- n° transaction,
- n° autorisation,
- certificat transaction,
- montant,
- etc.
Si vous avez une piste, merci d'avance.
Autre point, en début d'analyse j'ai remarqué qu'un fichier atos.php s'était glissé à la racine du site en question et il contient les lignes suivantes:
$_GET='com_hikashop';
$_GET='component';
$_GET='checkout';
$_GET='notify';
$_GET='atos';
$_GET='fr';
$_REQUEST='com_hikashop';
$_REQUEST='component';
$_REQUEST='checkout';
$_REQUEST='notify';
$_REQUEST='atos';
$_REQUEST='fr';
include('index.php');
La présence de ce fichier est-elle normal à la racine du site ?
Ayant un doute (
n'ayant pas trouvé d'infos à ce sujet), je l'ai supprimé. Est-ce que cela peut avoir un rapport avec mon premier problème ?
Merci, a+.