8791 sujets

Développement web côté serveur, CMS

Bonjour, d'abord, je ne suis pas sûr de poster au bon endroit! Excusez si il y a erreur.

Voilà je suis occupé à revoir mon site www.rumegiesmeteo.fr pour le valider xhtml et css et pour solutionner des problèmes d'affichages. Je cale actuellement sur un include.php que je voudrais rafraîchir automatiquement toute les 60 secondes. (avant j'utiliser une iframe avec une balise meta) Voyez le lien de test . En bas à gauche, il y a Relevés climatiques: Il s'agit d'un include.php et j'aimerais que cette partie de la page se rafraîchisse automatiquement toutes les 60 secondes. Pouvez-vous m'aider?
Modifié par flighty (27 Apr 2009 - 09:14)
Salut,

la solution du refresh est toujours valable... bien que pas terrible.

Sinon il faudrait regarder du côté d'Ajax...
J essaye de touver coté Ajax mais là je suis plus que nul et comprends pas bien ce que je trouve. Donc je cherche. Si quelqu'un a un tuyau.. Merci
Ben il me semble que le plus simple serait de partir d'une bibliothèque JavaScript existante : donc faire une recherche sur JQuery Ajax
Tu ne peux pas raffraichir uniquement un include, il faut passer par l'ajax si tu ne veux pas recharger toute la page.

Personnellement j'ai jamais rien compris aux scripts tout fait (euh c'est personnel Smiley biggol ). Donc moi je conseil d'apprendre à faire de l'ajax, c'est pas sorcier Smiley cligne .
http://www.siteduzero.com/tutoriel-3-4745-ajax-et-l-echange-de-donnees-en-javascript.html

(sinon il y a mootools aussi)

PS: essaie de revoir ton site avec une feuille de style et sans les iframes (xHTML powa), ça rendra beaucoup mieux Smiley eek (avec google chrome j'ai même pas ton menu)

J'ai rien dit, je viens de comprendre que tu refais ton site ^^ Smiley edit Modifié par uMa-xou (29 Apr 2009 - 09:35)
Bonjour,
Ajax pour moi c'est du produit d'entretien... MDR. Smiley langue

Bon j'ai quand même trouvé une solution: Il faut mettre l'include dans une div et rafraichir la div.
C'est pas moi qui ai trouvé ... j'avoue... Smiley cligne

Voici le script que j'ai trouvé: http://www.siteduzero.com/forum-83-261701-2366098-rafraichir-une-page-toute-les-x-sec-ou-min.html sur le site du zéro que je suis... en ajax !

a écrit :
<head><script type="text/javascript">
function writediv(texte, endroit)
{
document.getElementById(endroit).innerHTML = texte;
}

function afficher()
{

if(texte = file('monfichier.php'')) // Ton fichier à inclure dans la <div>
{
writediv('<p align="left">'+texte+'</p>', 'chat'); // chat = <div id='chat'>, c'est l'emplacement où tu veux placer ta page
}
}

function file(fichier)
{
if(window.XMLHttpRequest) // FIREFOX
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // IE
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else
return(false);
xhr_object.open("GET", fichier, false);
xhr_object.send(null);
if(xhr_object.readyState == 4) return(xhr_object.responseText);
else return(false);
}

setInterval('afficher()', 10000); // nombre de milisecondes entre deux rafraichissements : ici 10 secondes
</script></head>


à placer dans le head de la page qui contient la div à rafraîchir.

Voici le code html à placer là ou cela doit apparaître dans la page:
a écrit :
<body><div id="chat"><?php INCLUDE("monfichier.php");?></div></body>



Bon cela fonctionne parfaitement sous Firefox.

Par contre IE7 ... non cela ne va pas... Smiley fache

Si quelqu'un peut éventuellement affiner le code tel un trés bon fromage!!! Smiley ohwell

Attention deux à trois modification légère sont nécessaire pour valider xhtml avec w3c.. FASTOCH...


Merci.
Modifié par flighty (07 May 2009 - 18:44)
Je flippe avec ce problème, parce que le script marche super bien avec firefox mais ne va pas du tout avec Ie 7 6 ...
Lorsque l'on charge la page ok tout va bien. Mais aprés 1-2 minutes, si on actualise manuellement la page, au bout de 10 secondes environ ( le temps du rafraîchissement automatique), il affiche à nouveau les données qui ont été chargée la première fois... alors que pendant 10 secondes les données mise à jour ce sont affichées..


AAARGH...

Bon j'arrive à comprendre en gros ce qui se passe dans le code, mais là ou je ne comprends pas bien c'est ici:
a écrit :
#
function file(fichier)
#
{
#
if(window.XMLHttpRequest) // FIREFOX
#
xhr_object = new XMLHttpRequest();
#
else if(window.ActiveXObject) // IE
#
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
#
else
#
return(false);
#
xhr_object.open("GET", fichier, false);
#
xhr_object.send(null);
#
if(xhr_object.readyState == 4) return(xhr_object.responseText);
#
else return(false);
#
}

Je ne comprends pas la différence entre ce qui ce passe entre ie et firefox et les autres..

Si on pouvait m'éclairer?
Merci. Smiley cligne
J'ai beau lire et relire le tutot... rien n'y fait, je ne trouve rien qui parle du probléme d'ie6 et ie7.
Si ce n'est que les fonctions sont maintenant prise en charge... Mon oeil.

Vraiment j'ai besoin d'aide...

Merci

Smiley bawling
J'ai bein vu,
J'ai essayé de rempacer:
function file(fichier)
{
if(window.XMLHttpRequest) // FIREFOX
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // IE
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else
return(false);
xhr_object.open("GET", fichier, false);
xhr_object.send(null);
if(xhr_object.readyState == 4) return(xhr_object.responseText);
else return(false);
}


Par la fonction: que j'ai enregistrée auparavant sur le fichier oXHR.js
var xhr = getXMLHttpRequest();


Et là rien ne se passe...
C'est beau l'évolution de l'homme:

Avant pour rafraichir une partie de page: un include ou une iframe de la page dans laquelle on mettait une balise meta refresh...

Maintenant un roman dont je ne comprends rien et qui ne marche pas...

Ca m'énerve... Je ne comprends rien t ce tutot n'est pas clair du tout...
flighty a écrit :
Ca m'énerve... Je ne comprends rien t ce tutot n'est pas clair du tout...
Trouves-en un autre ! Smiley langue