Bonjour a tous .
j'ai petit programme ajax qui lit un fichier txt et l'affiche (nb visiteurs).
le programme marche sur local et ne marche pas en ligne .
Bonjour a tous .
j'ai petit programme ajax qui lit un fichier txt et l'affiche (nb visiteurs).
le programme marche sur local et ne marche pas en ligne .
C'est dommage...Envoyé par TSprog
Mais sincèrement, que veux-tu que l'on te dise de plus ?
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum
...et en nous montrant le code incriminé éventuellement ? ^^
pour la connection
pour l'affichage je fais ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 function xhr_connect(){ var xhr = false if(window.XMLHttpRequest){ xhr = new XMLHttpRequest }else if(window.ActiveXObject){ var reussi = false var iexhr = new Array("MSxml2.XMLHTTP.7.0","Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.4.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP") for(var i = 0 ; i < iexhr.length ; i++){ try{ xhr = new ActiveXObject(iexhr[i]) reussi = true } catch (e) {} } } return xhr; }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 var objxhr = xhr_connect() if(objxhr) { objxhr.onreadystatechange = function(){ if(objxhr.readyState == 4){ if(objxhr.status == 200) { document.getElementById('num').innerHTML = objxhr.responseText } } } objxhr.open("GET","../../visiteurs.txt",true) objxhr.send(null) }else { alert("probléme") }
désolé de m'etre mal éxprimé .
avec se code en haut , tout fonctionne tres bien en local .
mais dés que je mets en ligne rien dutout .
merci de m'éxcuser encore une fois
Pas d'inquiétude personne n'est faché
On va jeter un oeil à ce que tu as posté (je n'ai pas le temps vraiment tout de suite mais... tu es faché avec les ";" ? et puis aussi tiens, ta variable reussi n'est pas utilisée... et puis il manque les "()" après "xhr = new XMLHttpRequest" au début de xhr_connect)
sans regarder le code, juste
es tu sûr des chemins d'accès aux fichiers ?
Les joies du CSS | Réponses sur forum | Simple comme JS | Essais libres autour de l'API G$$gle Maps
✂ ---------------------------------------------
developpez.net c'est aussi :
✔ Les meilleurs cours et tutoriels pour apprendre le CSS
✔ Les meilleurs cours et tutoriels pour apprendre le (X)HTML
✔ Les meilleurs cours et tutoriels pour apprendre le JavaScript
oui bien sure . les chemin sont impeccable
Bonjour,
Vérifie bien que ton chemin est relatif par rapport à la page html et non par rapport au fichier JS. Il faut aussi prendre en compte le fait que, sur le serveur, tu ne peux pas accéder au dossier supérieur à la racine / de ton site.
Donc si tu essaie d'accéder à ../../ alors que ta page est http://www.monsite.com/index.htm ça ne fonctionnera pas.
Enfin : ton fichier txt est-il accessible en affichage direct dans le navigateur ?
oui merci pour ta réponse mais tout cela été vérifier avant de poster la question sur le forum c'est les premiéres chose a vérifié mais merci quand meme , j'atend toujours une reponse car cela me rend fou de voir que tout est impéc et que en local ca marche tres bien ....
cela marche , je ne saurais dire pourquoi ni comment j'ai enlevé le code de la page .js et je l'ai intégré dans la page qui l'appelé et ca fonctionne .
merci a tous .
je voudrai savoir comment amélioré se code et faire qu'il réactualise le chargement du fichier dés que se dernier change ?
Si ça marche depuis que tu as mis le code javascript dans le HTML, c'est donc surement un histoire de chemin et/ou droits d'accès. Mais bon... les mystères du javascript sont impénétrables... (c'est peut-être de la magie en fait )
Pour ta dernière question, tu ne peux pas savoir si le fichier change, mais tu peux le récupérer à intervalle régulier en faisant ça dans un
Code : Sélectionner tout - Visualiser dans une fenêtre à part setTimeout(appelAjax(),5000); //5 secondes
merci beaucoup pour ta reponse
ca marche pas , il faut que j'actualise manuelement...
Quel est ton code qui ne marche pas ?
Non, c'est de la magie
Code : Sélectionner tout - Visualiser dans une fenêtre à part setTimeout(appelMajax(),5000); //5 secondes
setTimeout(...) ne marche pas , en fait apres 15 minutes la page reste la meme meme que le fichier change , et quand j'actualise manuellement ca change ...
Envoyé par TSprog
Si on l'utilise correctement, ça marche bien...
ici, tu appelles toutes les 5 secondes le résultat de l'éxecution de la fonction au moment où le code a été interprété.
Code : Sélectionner tout - Visualiser dans une fenêtre à part setTimeout(appelAjax(),5000);
Le premier argument d'un timer est une référence à une fonction, pas son résultat !
Code : Sélectionner tout - Visualiser dans une fenêtre à part setTimeout(appelAjax,5000);
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum
Effectivement Bovino, je suis allé un peu vite pour écrire mon exemple !
Je suppose qu'il faut donc aussi préciser que setTimeout ne fait qu'une éxécution différée unique ?
Je voulais juste aiguiller sur la fonction à utiliser, pensant naïvement que tout le monde se renseignait avant d'utiliser une fonction dont il ne connait pas le fonctionnement !
merci beaucoup pour votre aide .
voici mon code qui ne fonctionne ne se rafraichis pas toute les seconde comme il devrait .... !
et cela ne marche pas ! je vois pas ou peux etre l'erreur ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 function appelajax() { var objxhr = xhr_connect() ; if(objxhr) { objxhr.onreadystatechange = function(){ if(objxhr.readyState == 4){ if(objxhr.status == 200) { document.getElementById('num').innerHTML = objxhr.responseText ; } } } objxhr.open("GET","../../visiteurs.txt",true); objxhr.send(null); }else { alert("probléme"); } } setTimeout(appelajax,1000);
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager