Passage variable php-js, framework RIALTO, IE6 vs IE7
2 réponses
fred
Bonjour,
Je débute en JavaScripts, mais pas en programmation, et je voudrais
quelques retours dexpériences parce que jai quelques soucis
bloquants.
Pour mon stage, je dois, entres autres, transporter une application
faites avec ms-access pour quelle soit accessible en réseau,
c'est-à-dire en client-serveur. Le serveur cest Apache avec php. Je me
suis donc tout naturellement tourné vers AJAX, et jai utilisé un
Framework, que je trouve génial (surtout quand on découvre ça ) :
RIALTO.
Avec tout cela, mon fichier .js appelle un fichier .php, par méthode
GET, passe des arguments. Le .php fait sa petite requête, que jai le
plaisir de retrouver dans le .js.
Je remplie ainsi un combo au chargement, et un tableau sur le choix
dun élément dans se combo.
MAIS, jai des incohérences, des problèmes, des trucs bizarres qui se
passent :
Quand je fais dans mon fichier php un « echo » pour retourner le
résultat de ma requete, ça ne marche pas, alors quavec un return, oui.
Mais jai remarqué que dans certain cas, le résultat trouvé dans le .js
est bon, mais quand je fais un eval dessus pour pouvoir traiter ma
variable (spec RIALTO), jai des caractères qui disparaissent : les
crochets et doubles quottes.
Faut il sérialiser ?
De plus, mon entreprise utilise IE 6.
Le remplissage des tableaux se fait bien sous FF, sous IE 7, mais pas
sous IE 6. Que dois-je faire ?
Merci pour vos éclairages avisés dexpert
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Elegie
fred wrote:
Bonjour,
Je débute en JavaScripts, mais pas en programmation, et je voudrais quelques retours dexpériences parce que jai quelques soucis bloquants. Pour mon stage, je dois, entres autres, transporter une application faites avec ms-access pour quelle soit accessible en réseau, c'est-à-dire en client-serveur. Le serveur cest Apache avec php. Je me suis donc tout naturellement tourné vers AJAX, et jai utilisé un Framework, que je trouve génial (surtout quand on découvre ça ) : RIALTO.
Je ne connais pas votre RIALTO, mais vous mets (amicalement bien sûr!) en garde contre l'utilisation gourmande d'AJAX. AJAX permet certes de réaliser des "clients riches" remarquables, mais introduit une complexité souvent sous-estimée par le programmeur (complexité liée aux problématiques de fall-back avec les formulaires HTML 4, ou au traitement de requêtes parallèles).
Comme vous débutez, il serait peut-être plus simple pour vous de vous limiter aux formulaires HTML; n'utilisez AJAX qu'avec parcimonie, quand vous serez familier des flux HTML/PHP.
Quand je fais dans mon fichier php un « echo » pour retourner le résultat de ma requete, ça ne marche pas, alors quavec un return, oui.
Cela me parait complètement normal, vous écrivez probablement un flux XML, récupéré par l'objet XMLHTTPRequest, et non un flux HTML destiné à être lu par le navigateur.
Mais jai remarqué que dans certain cas, le résultat trouvé dans le .js est bon, mais quand je fais un eval dessus pour pouvoir traiter ma variable (spec RIALTO), jai des caractères qui disparaissent : les crochets et doubles quottes.
Cela est probablement dû à une problématique d'escape; essayez de doubler votre caractère d'échappement () dans votre PHP, pour prendre en compte l'échappement chaîne javascript.
Par ailleurs, testez sous Firefox, et vérifiez la console javascript; je doute qu'un tel problème soit passé inaperçu ("unterminated string").
Faut il sérialiser ?
Vers quoi? A priori vous utilisez déjà une sérialisation JSON, ce qui de loin le plus simple :)
Le remplissage des tableaux se fait bien sous FF, sous IE 7, mais pas sous IE 6. Que dois-je faire ?
Vérifiez que le dernier élément de votre tableau n'est pas suivi d'une virgule.
HTH, Elegie.
fred wrote:
Bonjour,
Je débute en JavaScripts, mais pas en programmation, et je voudrais
quelques retours dexpériences parce que jai quelques soucis bloquants.
Pour mon stage, je dois, entres autres, transporter une application
faites avec ms-access pour quelle soit accessible en réseau,
c'est-à-dire en client-serveur. Le serveur cest Apache avec php. Je me
suis donc tout naturellement tourné vers AJAX, et jai utilisé un
Framework, que je trouve génial (surtout quand on découvre ça ) : RIALTO.
Je ne connais pas votre RIALTO, mais vous mets (amicalement bien sûr!)
en garde contre l'utilisation gourmande d'AJAX. AJAX permet certes de
réaliser des "clients riches" remarquables, mais introduit une
complexité souvent sous-estimée par le programmeur (complexité liée aux
problématiques de fall-back avec les formulaires HTML 4, ou au
traitement de requêtes parallèles).
Comme vous débutez, il serait peut-être plus simple pour vous de vous
limiter aux formulaires HTML; n'utilisez AJAX qu'avec parcimonie, quand
vous serez familier des flux HTML/PHP.
Quand je fais dans mon fichier php un « echo » pour retourner le
résultat de ma requete, ça ne marche pas, alors quavec un return, oui.
Cela me parait complètement normal, vous écrivez probablement un flux
XML, récupéré par l'objet XMLHTTPRequest, et non un flux HTML destiné à
être lu par le navigateur.
Mais jai remarqué que dans certain cas, le résultat trouvé dans le .js
est bon, mais quand je fais un eval dessus pour pouvoir traiter ma
variable (spec RIALTO), jai des caractères qui disparaissent : les
crochets et doubles quottes.
Cela est probablement dû à une problématique d'escape; essayez de
doubler votre caractère d'échappement () dans votre PHP, pour prendre
en compte l'échappement chaîne javascript.
Par ailleurs, testez sous Firefox, et vérifiez la console javascript; je
doute qu'un tel problème soit passé inaperçu ("unterminated string").
Faut il sérialiser ?
Vers quoi? A priori vous utilisez déjà une sérialisation JSON, ce qui de
loin le plus simple :)
Le remplissage des tableaux se fait bien sous FF, sous IE 7, mais pas
sous IE 6. Que dois-je faire ?
Vérifiez que le dernier élément de votre tableau n'est pas suivi d'une
virgule.
Je débute en JavaScripts, mais pas en programmation, et je voudrais quelques retours dexpériences parce que jai quelques soucis bloquants. Pour mon stage, je dois, entres autres, transporter une application faites avec ms-access pour quelle soit accessible en réseau, c'est-à-dire en client-serveur. Le serveur cest Apache avec php. Je me suis donc tout naturellement tourné vers AJAX, et jai utilisé un Framework, que je trouve génial (surtout quand on découvre ça ) : RIALTO.
Je ne connais pas votre RIALTO, mais vous mets (amicalement bien sûr!) en garde contre l'utilisation gourmande d'AJAX. AJAX permet certes de réaliser des "clients riches" remarquables, mais introduit une complexité souvent sous-estimée par le programmeur (complexité liée aux problématiques de fall-back avec les formulaires HTML 4, ou au traitement de requêtes parallèles).
Comme vous débutez, il serait peut-être plus simple pour vous de vous limiter aux formulaires HTML; n'utilisez AJAX qu'avec parcimonie, quand vous serez familier des flux HTML/PHP.
Quand je fais dans mon fichier php un « echo » pour retourner le résultat de ma requete, ça ne marche pas, alors quavec un return, oui.
Cela me parait complètement normal, vous écrivez probablement un flux XML, récupéré par l'objet XMLHTTPRequest, et non un flux HTML destiné à être lu par le navigateur.
Mais jai remarqué que dans certain cas, le résultat trouvé dans le .js est bon, mais quand je fais un eval dessus pour pouvoir traiter ma variable (spec RIALTO), jai des caractères qui disparaissent : les crochets et doubles quottes.
Cela est probablement dû à une problématique d'escape; essayez de doubler votre caractère d'échappement () dans votre PHP, pour prendre en compte l'échappement chaîne javascript.
Par ailleurs, testez sous Firefox, et vérifiez la console javascript; je doute qu'un tel problème soit passé inaperçu ("unterminated string").
Faut il sérialiser ?
Vers quoi? A priori vous utilisez déjà une sérialisation JSON, ce qui de loin le plus simple :)
Le remplissage des tableaux se fait bien sous FF, sous IE 7, mais pas sous IE 6. Que dois-je faire ?
Vérifiez que le dernier élément de votre tableau n'est pas suivi d'une virgule.
HTH, Elegie.
fred
Elegie a présenté l'énoncé suivant :
fred wrote:
Bonjour,
Je débute en JavaScripts, mais pas en programmation, et je voudrais quelques retours dexpériences parce que jai quelques soucis bloquants. Pour mon stage, je dois, entres autres, transporter une application faites avec ms-access pour quelle soit accessible en réseau, c'est-à-dire en client-serveur. Le serveur cest Apache avec php. Je me suis donc tout naturellement tourné vers AJAX, et jai utilisé un Framework, que je trouve génial (surtout quand on découvre ça ) : RIALTO.
Je ne connais pas votre RIALTO, mais vous mets (amicalement bien sûr!) en garde contre l'utilisation gourmande d'AJAX. AJAX permet certes de réaliser des "clients riches" remarquables, mais introduit une complexité souvent sous-estimée par le programmeur (complexité liée aux problématiques de fall-back avec les formulaires HTML 4, ou au traitement de requêtes parallèles).
Comme vous débutez, il serait peut-être plus simple pour vous de vous limiter aux formulaires HTML; n'utilisez AJAX qu'avec parcimonie, quand vous serez familier des flux HTML/PHP.
Il s'agissait de mettre à jour une combo, et deux tableaux, le tout sur des requetes. C'est pour cela qu'AJAX était le meilleur compromis. Pour ce que j'en fait, grâce au framemork, qui m'afranchi du HTML, c'est le bon choix !
Quand je fais dans mon fichier php un « echo » pour retourner le résultat de ma requete, ça ne marche pas, alors quavec un return, oui.
Cela me parait complètement normal, vous écrivez probablement un flux XML, récupéré par l'objet XMLHTTPRequest, et non un flux HTML destiné à être lu par le navigateur.
Ce n'étais pas un flux XML, mais j'ai fini par trouver la solution : il faut forcer l'entête comme étant plain/text. Cette modification à tout de suite débloqués tous les points bloquants suivants :-)
Mais jai remarqué que dans certain cas, le résultat trouvé dans le .js est bon, mais quand je fais un eval dessus pour pouvoir traiter ma variable (spec RIALTO), jai des caractères qui disparaissent : les crochets et doubles quottes.
Cela est probablement dû à une problématique d'escape; essayez de doubler votre caractère d'échappement () dans votre PHP, pour prendre en compte l'échappement chaîne javascript.
Par ailleurs, testez sous Firefox, et vérifiez la console javascript; je doute qu'un tel problème soit passé inaperçu ("unterminated string").
Faut il sérialiser ?
Vers quoi? A priori vous utilisez déjà une sérialisation JSON, ce qui de loin le plus simple :)
Le remplissage des tableaux se fait bien sous FF, sous IE 7, mais pas sous IE 6. Que dois-je faire ?
Vérifiez que le dernier élément de votre tableau n'est pas suivi d'une virgule.
HTH, Elegie.
Merci beaucoup de votre contribution. Je sais depuis longtemps que JS est dur à maintenir, mais, mais, j'ai beaucoup avancé aujourd'hui, et je reste convaincu, qu'avec le peu de code que j'ai écrit, le framework était de loin le meilleur choix, pour cette application là ... Fred
Elegie a présenté l'énoncé suivant :
fred wrote:
Bonjour,
Je débute en JavaScripts, mais pas en programmation, et je voudrais
quelques retours dexpériences parce que jai quelques soucis bloquants.
Pour mon stage, je dois, entres autres, transporter une application faites
avec ms-access pour quelle soit accessible en réseau, c'est-à-dire en
client-serveur. Le serveur cest Apache avec php. Je me suis donc tout
naturellement tourné vers AJAX, et jai utilisé un Framework, que je trouve
génial (surtout quand on découvre ça ) : RIALTO.
Je ne connais pas votre RIALTO, mais vous mets (amicalement bien sûr!) en
garde contre l'utilisation gourmande d'AJAX. AJAX permet certes de réaliser
des "clients riches" remarquables, mais introduit une complexité souvent
sous-estimée par le programmeur (complexité liée aux problématiques de
fall-back avec les formulaires HTML 4, ou au traitement de requêtes
parallèles).
Comme vous débutez, il serait peut-être plus simple pour vous de vous limiter
aux formulaires HTML; n'utilisez AJAX qu'avec parcimonie, quand vous serez
familier des flux HTML/PHP.
Il s'agissait de mettre à jour une combo, et deux tableaux, le tout sur
des requetes. C'est pour cela qu'AJAX était le meilleur compromis. Pour
ce que j'en fait, grâce au framemork, qui m'afranchi du HTML, c'est le
bon choix !
Quand je fais dans mon fichier php un « echo » pour retourner le résultat
de ma requete, ça ne marche pas, alors quavec un return, oui.
Cela me parait complètement normal, vous écrivez probablement un flux XML,
récupéré par l'objet XMLHTTPRequest, et non un flux HTML destiné à être lu
par le navigateur.
Ce n'étais pas un flux XML, mais j'ai fini par trouver la solution : il
faut forcer l'entête comme étant plain/text. Cette modification à tout
de suite débloqués tous les points bloquants suivants :-)
Mais jai remarqué que dans certain cas, le résultat trouvé dans le .js est
bon, mais quand je fais un eval dessus pour pouvoir traiter ma variable
(spec RIALTO), jai des caractères qui disparaissent : les crochets et
doubles quottes.
Cela est probablement dû à une problématique d'escape; essayez de doubler
votre caractère d'échappement () dans votre PHP, pour prendre en compte
l'échappement chaîne javascript.
Par ailleurs, testez sous Firefox, et vérifiez la console javascript; je
doute qu'un tel problème soit passé inaperçu ("unterminated string").
Faut il sérialiser ?
Vers quoi? A priori vous utilisez déjà une sérialisation JSON, ce qui de loin
le plus simple :)
Le remplissage des tableaux se fait bien sous FF, sous IE 7, mais pas sous
IE 6. Que dois-je faire ?
Vérifiez que le dernier élément de votre tableau n'est pas suivi d'une
virgule.
HTH,
Elegie.
Merci beaucoup de votre contribution. Je sais depuis longtemps que JS
est dur à maintenir, mais, mais, j'ai beaucoup avancé aujourd'hui, et
je reste convaincu, qu'avec le peu de code que j'ai écrit, le framework
était de loin le meilleur choix, pour cette application là ...
Fred
Je débute en JavaScripts, mais pas en programmation, et je voudrais quelques retours dexpériences parce que jai quelques soucis bloquants. Pour mon stage, je dois, entres autres, transporter une application faites avec ms-access pour quelle soit accessible en réseau, c'est-à-dire en client-serveur. Le serveur cest Apache avec php. Je me suis donc tout naturellement tourné vers AJAX, et jai utilisé un Framework, que je trouve génial (surtout quand on découvre ça ) : RIALTO.
Je ne connais pas votre RIALTO, mais vous mets (amicalement bien sûr!) en garde contre l'utilisation gourmande d'AJAX. AJAX permet certes de réaliser des "clients riches" remarquables, mais introduit une complexité souvent sous-estimée par le programmeur (complexité liée aux problématiques de fall-back avec les formulaires HTML 4, ou au traitement de requêtes parallèles).
Comme vous débutez, il serait peut-être plus simple pour vous de vous limiter aux formulaires HTML; n'utilisez AJAX qu'avec parcimonie, quand vous serez familier des flux HTML/PHP.
Il s'agissait de mettre à jour une combo, et deux tableaux, le tout sur des requetes. C'est pour cela qu'AJAX était le meilleur compromis. Pour ce que j'en fait, grâce au framemork, qui m'afranchi du HTML, c'est le bon choix !
Quand je fais dans mon fichier php un « echo » pour retourner le résultat de ma requete, ça ne marche pas, alors quavec un return, oui.
Cela me parait complètement normal, vous écrivez probablement un flux XML, récupéré par l'objet XMLHTTPRequest, et non un flux HTML destiné à être lu par le navigateur.
Ce n'étais pas un flux XML, mais j'ai fini par trouver la solution : il faut forcer l'entête comme étant plain/text. Cette modification à tout de suite débloqués tous les points bloquants suivants :-)
Mais jai remarqué que dans certain cas, le résultat trouvé dans le .js est bon, mais quand je fais un eval dessus pour pouvoir traiter ma variable (spec RIALTO), jai des caractères qui disparaissent : les crochets et doubles quottes.
Cela est probablement dû à une problématique d'escape; essayez de doubler votre caractère d'échappement () dans votre PHP, pour prendre en compte l'échappement chaîne javascript.
Par ailleurs, testez sous Firefox, et vérifiez la console javascript; je doute qu'un tel problème soit passé inaperçu ("unterminated string").
Faut il sérialiser ?
Vers quoi? A priori vous utilisez déjà une sérialisation JSON, ce qui de loin le plus simple :)
Le remplissage des tableaux se fait bien sous FF, sous IE 7, mais pas sous IE 6. Que dois-je faire ?
Vérifiez que le dernier élément de votre tableau n'est pas suivi d'une virgule.
HTH, Elegie.
Merci beaucoup de votre contribution. Je sais depuis longtemps que JS est dur à maintenir, mais, mais, j'ai beaucoup avancé aujourd'hui, et je reste convaincu, qu'avec le peu de code que j'ai écrit, le framework était de loin le meilleur choix, pour cette application là ... Fred