Bonjour !
Voilà la situation:
Fichiers
- a.js
- b.html
- c.php
Mécanisme
b.html inclut a.js qui crée une requête asynchrome ave c.php .
c.php renvoie soit un nombre, soit du texte à a.js .
a.js regarde le (var) Resultat et l'affiche si c'est du texte en popup, sinon il continue à faire des opérations:
if(isNaN(Resultat)) { popup( Resultat); } else{ ... }
Le souci:
On a des popup avec des nombres qui s'affichent.
C'est à dire que isNaN(Resultat) vaut {true} alors que Resultat est un nombre.
On pense que c'est un problème d'encodage: c.php envoie à a.js un nombre et a.js ne voit pas que c'est un nombre.
Le code (Les bouts utils):
a.js
c.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 // On crée la requête. var Temp; var myRequest = new Request({method: 'get', url: 'c.php', onSuccess: function(Temp){ // On teste le résultat. if(isNaN(Temp)) { alert(Temp); } else { ... } } // On envoie la requête. myRequest.send("e=mc2");
b.html affiche un popup avec le chiffre '5' écrit dedans.
Code : Sélectionner tout - Visualiser dans une fenêtre à part echo '5';
Tout le code est téléchargeable sur lapinot.ch/gmath (logiciel.php = b.html, javascript/ResolutionFonction.js = a.js, php/scripts/ResoudreEquation.php = c.php)
Détail:
L'erreur n'apparaît pas en localhost.
Partager