Problème très curieux sur une page web

Problème très curieux sur une page web - HTML/CSS - Programmation

Marsh Posté le 20-11-2008 à 20:00:40    

Bonjour à tous,
 
Je rencontre un problème vraiment très curieux que je n'arrive pas à expliquer ni à reproduire.
 
J'ai réalisé sur une gestion de panier en php et en ajax.
En gros la personne saisit un code article, une quantité puis clique sur ajouter (bouton html qui ensuite fait un insert dans la BDD puis rafraichi la page)
En dessous de cette zone de saisis on y voit la liste des articles deja commandé.
Et tout à la fin un bouton "valider".
 
Le tout (doit) fonctionne sous IE6 (c'est sur l'intranet de la société et IE6 ne peut pour le moment pas être changé).
 
Mon problème inexpliquer et incompréhensible pour moi étant :
Dans la plus part des cas, aucun problème tout marche parfaitement.
Dans 10/15% des cas (environ), tout se déroule correctement au début lorsque la personne ajoute des articles puis tout d'un coup, tous les liens sont "inactifs" c'est à dire que lorsqu'elle clique sur un lien quelquonques sur la page, rien ne se produit. Que ce soit l'ajout d'un article ou la validation du panier.A noter que tous ces liens sont des "onclick" ou des input submit.  
 
Mon problème étant de savoir pourquoi tout d'un coup plus rien ne fonctionne alors que tout marche parfaitement la plus part du temps.
Fausse manipulation d'un utilisateur ?
Surcharge serveur ?
Mauvais codage configuré sur le poste utilisateur ?
IE6 bug avec l'ajax et ne le supporte pas vraiment ?
Erreur dans mon script ? (mais dans ce cas pourquoi celà marche dans 80% des cas ?). Et comment le débogué ?
 
Je ne sais pas si j'ai été très clair, je remercie dans tous les cas, les âmes charitables qui tenteront de m'aider.
 
J'ai googlé un peu, mais je n'ai pas trouvé de personne ayant le meme cas que moi (les liens ne fonctionnent plus).


Message édité par tartiflette75 le 20-11-2008 à 20:02:51

---------------
https://www.entrepreneur-liberte.com
Reply

Marsh Posté le 20-11-2008 à 20:00:40   

Reply

Marsh Posté le 20-11-2008 à 20:06:03    

Hmmm, javascript est désactivé ? Déjà, si tes liens dépendent de javascript, rajoute une balise <noscript> dans la page, pour indiquer lorsque c'est désactivé pour une raison ou une autre (d'autant que ce n'est pas toujours évident à diagnostiquer). Ensuite es-tu sûr qu'il n'y a pas d'erreur à l'exécution du script ?

Message cité 1 fois
Message édité par tpierron le 20-11-2008 à 20:07:09
Reply

Marsh Posté le 20-11-2008 à 20:14:33    

tpierron a écrit :

Hmmm, javascript est désactivé ? Déjà, si tes liens dépendent de javascript, rajoute une balise <noscript> dans la page, pour indiquer lorsque c'est désactivé pour une raison ou une autre (d'autant que ce n'est pas toujours évident à diagnostiquer). Ensuite es-tu sûr qu'il n'y a pas d'erreur à l'exécution du script ?


 
Non javascript n'est pas désactivé. Si javascript était désactivé sur le poste client, il ne pourrait pas rajouter d'articles. L'utilisateur (jamais les mêmes et de facon aléatoire) peut ajouter X articles puis à un moment il ne peut plus en ajouter et ne peut plus rien faire (les liens ne fonctionnent plus).
Si ils ferment son navigateur et le rouvre, tout remarche comme au début. Et ca peut tout à fait fonctionner jusqu'au bout, ou bien planter en cours de commande après X articles (c'est aléatoire).
 
Concernant d'éventuelles erreurs d'éxécution, je suis allé voir sur un PC d'un utilisateur qui a rencontré ce problème, et il n'y avait pas d'erreur javascript (le petit triangle en bas d'IE lorsqu'il y en a).
 
J'ai essayé mon code sur mon poste perso avec firefox et firebug et je n'ai trouvé aucun bug non plus.
 
Dans tous les cas, merci pour ta réponse  :jap:  
 
D'après moi je penche à priori pour un bug dans mon code ou une fausse manipulation ou configuration (encoage peut être) du poste client. Mais je n'arrive pas à diagnostiquer quoi que ce soit), cela fait deja deux jours que je suis sur ce problème.


Message édité par tartiflette75 le 20-11-2008 à 20:20:43

---------------
https://www.entrepreneur-liberte.com
Reply

Marsh Posté le 20-11-2008 à 20:21:20    


 [:canaille] Tiens, il me semble me rapeller d'un truc avec IE. Pour ajouter ton article à ton panier, tu envois bien une requète XMLHttpRequest au serveur, et dans le callback tu modifies la page. C'est bien ça ?
 
Par le plus grand des petits hasards, lorsque tu crées ton objet XMLHttpRequest, est-ce tu réutilises un ancien objet (stocké dans une variable globale) ou tu le crées à chaque requète ? J'ai le souvenir que la première méthode donne le genre de comportement que tu décris avec IE.

Reply

Marsh Posté le 20-11-2008 à 20:36:19    

tpierron a écrit :


 [:canaille] Tiens, il me semble me rapeller d'un truc avec IE. Pour ajouter ton article à ton panier, tu envois bien une requète XMLHttpRequest au serveur, et dans le callback tu modifies la page. C'est bien ça ?
 
Par le plus grand des petits hasards, lorsque tu crées ton objet XMLHttpRequest, est-ce tu réutilises un ancien objet (stocké dans une variable globale) ou tu le crées à chaque requète ? J'ai le souvenir que la première méthode donne le genre de comportement que tu décris avec IE.


 
J'en suis à mes débuts en ajax et je n'ai pas mon code sous les yeux, j'ai par contre utilisé la classe prototype.js que l'on peut trouver ici ( http://www.prototypejs.org ). Je ne sais pas si tu connais ou si celà peut te donner plus d'explications.
 
J'ai ensuite une fonction qui est appelé (toujours la meme) pour chaque ajout d'article. Il me semble pas que je supprime l'objet et que je le recré à nouveau en effet.
 
Si celà était bien le problème (il s'agit bien de phénomène "aléatoire" comme dans mon cas ?), connais tu une solution pour le résoudre  (à part changer de navigateur, ce qui n'est pas possible dans mon cas) ?


Message édité par tartiflette75 le 20-11-2008 à 20:36:45

---------------
https://www.entrepreneur-liberte.com
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed