Rafraichir une variable

Eléphanteau du PHP | 21 Messages

29 févr. 2012, 12:20

Bonjour à tous,

J'affiche une variable avec ceci :

Code : Tout sélectionner

<?php $file = fopen("compteurs/visites.txt","r+"); $num = fgets($file,4096); fclose($file); echo $num; ?>
Comment faire pour actualiser en Ajax pas toute
la page mais seulement la vatiable toutes les 30 secondes ?

Merci de votre aide.

Eléphant du PHP | 179 Messages

29 févr. 2012, 12:55

Hello,

bien, il faut que tu mettes ce bout de code dans un script php annexe à la page.

Tu écris ta fonction javascript qui va permettre d’appeler par ajax ce script et qui va récupérer ce que tu as "echo"

Et après une fois que tu as récupérer ta variable, dans ta fonction javascript tu lui demandes de se ré appeler au bout de 20 secondes :

setTimeout( "mafonction()", 1000 );

( l'int correspond aux millisecondes donc 1000 = 1 seconde )

Eléphanteau du PHP | 21 Messages

29 févr. 2012, 13:01

Bonjour Thibaud C,

Merci de ta réponse, j'ai compris le principe,
mais je ne maitrise pas l'Ajax et je ne sais
pas comment faire !

A vous lire.

Eléphant du PHP | 83 Messages

08 mars 2012, 23:15

Salut,

Votre code php dans "abc.php"
<?php
$file = fopen("compteurs/visites.txt","r+");
$num = fgets($file,4096);
fclose($file);
echo $num;
?>
puis dans ton index ou dans le fichier qui affiche la variable :

Code : Tout sélectionner

<script type="text/javascript"> function showval(str) { if (str.length==0) { document.getElementById("txtHint").innerHTML=""; return; } if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("myvaltag").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","abc.php"); xmlhttp.send(); setTimeout('showval()', 30000); } </script>
ou "myvaltag" est l'id de la balise qui doit affiché cette valeur.

Bon travail

Eléphanteau du PHP | 21 Messages

08 mars 2012, 23:44

Bonsoir Libertux,

Je vais tester cela !

Réponse dès que fait.

@ +

ViPHP
ViPHP | 1996 Messages

11 mars 2012, 14:09

Profites-en pour mettre à jour ton php
<?php
$file = fopen("compteurs/visites.txt","r+");
$num = fgets($file,4096);
fclose($file);
echo $num;
?>
<?php
file_put_contents ("compteurs/visites.txt",$num);
?>
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr