Bonjour,
Je rencontre un sérieux problème bien précis et identifiable
Le bug n'apparait que sur Internet Explorer 6 Version 6.0.2800 (aucun pb sur les versions supérieures ni autre navigateur)
J'utilise JSmin, un script PHP qui compresse des scripts JS.
Pour chaque page de mon appli, je génère le script JS unique et spécifique à la page qui contient tous les scripts utilisés. Donc, chaque page dispose à chaque fois d'un fichier unique que nous appelerons "script.js".
Sur ce fameux navigateur IE (v6.0.2800), une de mes page est inutilisable par mes clients car le moteur de recherche renvoi un message d'erreur "Objet inconnu" (cf le pti triangle jaune de IE).
Après quelques recherches je me suis aperçu que deux fonctions utilisées par ce moteur de recherche n'ont pas été intégrées au fichier script.js compressé.
J'ai alors penché vers ma configuration PHP dans laquelle je spécifie quel fichier est utilisé par quelle page mais après qlq "echo" des variables, les fonctions sont belles et bien configurées pour être chargées dans le script.js
Essais sur d'autres navigateurs (momo, safa, opépé et yeuyeu 7) :
les fonctions sont bien dans le script.js, aucun pb
Du côté de mon serveur web j'ai alors repéré le script.js généré par le vilain IE et en l'ouvrant j'ai remarqué que les fonctions s'y trouvaient bien !! Alors que je ne les aient pas vues en ouvrant script.js depuis IE...
J'ai pensé à un décalage dans mes traitements...mais...pour en avoir le coeur net j'ai ensuite procédé à ces manipulations bêbêtes depuis le vilain IE6.0.2800 pour me confirmer la chose :
1 - ouverture de la page truc.php
2 - script.js généré et présent
3 - téléchargement du script.js depuis l'url http://www......./script.js
4 - ouverture du fichier depuis notepad
5 - FONCTIONS NON PRESENTES
6 - REtéléchargement du script.js depuis l'url http://www......./script.js
7 - ouverture du fichier depuis notepad
8 - FONCTIONS PRESENTES!
ok là j'avoue je suis épaté...
Sans aucune autre intervention que la mienne (unique utilisateur de l'appli en interne), le fichier script.js a muté entre le premier téléchargement URL et le second.
Comment est-ce possible SVP ? Y a -t'il des subtilités d'encodage avec cette version de IE ou de modification des fichiers lorsqu'on télécharge ? Genre un bête passage en ASCII comme le font certains FTP...
J'ai cherché des BOM et autre subtilités mais rien y fait...
Et autant le dire....je suis dans la m....car tous mes clients ont ce IE de malheur...et ils attendent que l'appli soit opérationnelle. (devant l'être depuis hier midi)
J'ai (très) hâte d'entendre votre version des faits et vos lumières
Merci
(si un gentil OP connait un meilleur endroit pour ce post, qu'il n'hésite surtout pas, je ne sais pas qualifier mon pb à part peut-être "JS/encodage"...)
Partager