THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline

#1 BUG paiement par chèque ?

(29-12-2007 17:27:34)


Bonjour à tous... et bonnes fêtes ;-)

J'ai travaillé sur Thelia 1.3.2 en local et à la page "cheque", si on réactualisait (ou revenait sur) la page, la boucle commande n'affichait plus rien : pas de souci, j'avais mis une petite note en ce sens.

Puis j'ai mis le site en ligne pour test et j'ai utilisé la 1.3.3, et là gros changement : une réactualisation n'efface pas la commande... mais elle affiche toutes les commandes de tous les clients, ce qui est assez grave !

Pourtant rien ne semble modifié dans cheque.html, ni cheque.php... glups
Une idée ?


(à ce propos, sur le blog référençant les modifs de la 1.3.3, je vois qu'il y a une confirmation sur les paiements par chèque et virement : c'est quoi cette confirmation ?)
M. Yoann peut-être ?

Offline


Ca n'arrive qu'à moi... ?

Qui peut me répondre SVP ?

Offline


Salut,

moyen de voir un exemple ?
moi j'ai aussi implémenter le "cheque" sur 1 site en 1.3.3 et je ne vois pas le problème que tu évoques ??!

Offline


tu as bien un reset=1 dans cheque.php ?

Offline


Merci loading,

Oui, dans cheque.php j'ai laissé les variables standard et l'include :
    $fond="cheque.html";
    $securise=1;
    $pageret=1;
    $reset=1;
    include("fonctions/moteur.php");

Voici ce que ça donne :
page cheque : chequerf0.jpg
sur reload ou retour (extrait) :
reloadhz3.jpg

Se peut-il qu'un mauvais transfert de la BDD soit fautif (par exemple) ?

  • yoan
  • Cofondateur Thelia

Offline


Etonnant hum, as tu remplacé client/plugins/cheque ?


http://yoandemacedo.com

Cofondateur de la solution Thelia 1.x

Offline


Je ne me rappelle pas y avoir touché, Yoan.

En voici le contenu :

    include_once(realpath(dirname(__FILE__)) . "/../../../classes/PluginsPaiements.class.php");
    include_once(realpath(dirname(__FILE__)) . "/../../../classes/Variable.class.php");
   
    class Cheque extends PluginsPaiements{


        function Cheque(){
            $this->PluginsPaiements("cheque");
        }
       
        function init(){
            $this->ajout_desc("chèque", "chèque", "", 1);           
        }
   
        function paiement($commande){
           
            $urlsite = new Variable();
            $urlsite->charger("urlsite");

            header("Location: " . $urlsite->valeur . "/cheque.php");           
        }
   
    }

Mais je m'aperçois que je n'ai pas le statut "Annulé" dans mon BO en ligne (et il n'est pas dans la BDD)... alors que je l'ai en local !

Très bizarre, je vais refaire le tour de toutes les tables !

Mais est-ce que ceci pourrait être à l'origine d'un tel comportement ?

Offline


Correction : il n'est pas dans le BO mais il est dans la BDD en ligne !
Bon, je vérifie tout avant de revenir ...

Offline


Après révision, ma base en ligne est ok.

En plus du problème évoqué en premier (retour ou reload de la page cheque) pour le Front Office, il y a donc une absence de l'option "Annuler" dans le BO... alors qu'elle est bien dans la table statutdesc et statut (=5). Et j'ai dans la base une commande annulée... qui est absente dans le BO.

Tous mes fichiers en ligne sont en 755. J'ai les mêmes fichiers en local...
D'où peut venir ce mystère ?

Offline


Je constate aussi que Cheque.class.php est bien différent sur la 1.3.3 (ma version en ligne donc) et fait effectivement appel notamment à :

modules_fonction("confirmation", $commande);       

Pourtant rien de plus ne se passe... à part mon problème, qui d'ailleurs affiche toutes les commandes y compris celle qui est annulée...

Offline


tu as deja utilisé un comparateur comme winmerge par exemple ?

Offline


au fait, comment t'es passé de la 1.3.2 à la 1.3.3 ?

Offline


Pour le comparateur, non : je ne connaissais pas...

Pour le passage : j'avais d'abord exporté/importé l'ensemble de mes tables dans la base en ligne, puis recopié les dossiers d'une 1.3.3 dézippée en localet  puis copié tout mes fichier racine (html+php).

Voyant que ça ne marchait pas, j'ai vu les recommandations du forum, donc supprimé toutes mes tables en ligne, fait une installl 1.3.3, puis repeuplé les nouvelles tables depuis mes tables locales. Bien sûr, j'ai enlevé le dossier "install", importé mes fichiers html/php et voilà : ça semblait fonctionner, mais j'ai l'impression que ça bloque en fait sur les nouvelles fonctionalités de la 1.3.3, non ?

Offline


Je cherche toujours...

Une idée ?

Offline


Mouaip...

Pour le non affichage de l'option de statut "Annulé" dans le BO/Gestion des commandes, pas étonnant : dans la nouvelle version de admin/commande_details.php il y a ça

                $query = "select * from $statut->table where id<>5";

fallait le dire... je pouvait toujours ce que j'avais mal fait !


Bon, ça ne résoud pas mon problème de la page Chèque...

Offline


pas evident le debugage en ligne via forum !

moyen de voir en ligne le bug ?

Offline


Oui, c'est faisable maintenant :-)

Il te faudra créer un compte pour commander, donc dis-moi quel nom tu mets, ou mets un nom très bidon. Je dis ça car il y a déjà eu une vraie commande (alors que le site n'est pas vraiment au point...) !

Merci

C'est ici :
www.yvy-production.com

Offline


Alors,
Après avoir installé la 1.3.3 en local j'ai été confronté au même problème.

J'ai ensuite procédé à un échange de fichier "Cheque.class.php" avec la 1.3.2 (puisqu'ils diffèrent)... idem
Puis j'ai utilisé le template d'origine à la place de mon site : pareil.

Bon, comme le site est maintenant fonctionnel je vais me débrouiller pour parer à cet inconvénient, qui me semble être un petit oubli dans la gestion d'erreurs.

Par contre je n'ai toujours pas vu ce qu'est cette "confirmation" après le paiement par chèque : quelqu'un peut m'éclairer ?

Offline


Tu as trouvé une réponse à ton problème Marco, de listing des commandes après retour sur la page cheque, virement, et autre ?

Ça fait la même chose chez moi (1.3.3).

Plus couplé au bug de caractères accentués dans le numéro de commande :
http://forum.thelia.fr/viewtopic.php?id=1393

Last edited by KikiQuik (29-01-2008 14:13:45)

Offline


J'ai également ce problème de boucle COMMANDE_REF.

Si l'internaute recharge la page cheque.php, cette boucle n'affiche plus seulement les références de sa commande, mais liste à la place toutes les commandes de la boutique.

Il y a t-il un moyen de désactiver la boucle lorsque la page est chargée une seconde fois ?

Offline


La ligne suivante a été supprimée au début de  boucleCommande() :

if($commande_ref == "" && $client_id == "") return;

Si on remet cette ligne ça baigne

je renseigne le bug-tracker

Offline


Effectivement, maintenant tout baigne.

Merci wink

Offline


Hello,

jhr, quand je teste ta bretelle, ça me supprime bien l'affichage de "toutes" les commandes si je réactualise la page paiement par chèque.

Mais du coup, je ne vois plus aucune de mes commandes dans mon compte :-(

C'est assez bloquant quand même...

Ca fait ça chez vous aussi ?

Mathieu

Offline


ça le fait.

C'est évidemment assez pénible quand on veut faire de la mise point mais c'est  une sécurité quand le site est en ligne.

JHR

Offline


oui mais du coup la personne qui se connecte ne peux plus consulter ses commandes pour savoir où elles en sont.

enfin en tous cas c'est ce que ça fait sur mon site : soit il peut voir toutes les commandes de tout le monde, soit aucune.