bonjour à toutes et à tous,
j'aimerai savoir comment je peux faire comme le truc de faceBookcàd actualiser la page quand la base de données change (ajout modif supp).
merciiiiiiiii beaucoup d'avance.
bonjour à toutes et à tous,
j'aimerai savoir comment je peux faire comme le truc de faceBookcàd actualiser la page quand la base de données change (ajout modif supp).
merciiiiiiiii beaucoup d'avance.
je pence qu'il y a un script qui permet l'actualisation des div chaque bout de temps par exemple 10s à l'aide de jquery.
est ce qu'il y a des proposition pour faire cela merciiii de m'aider c'est urgent.
Regarde du côté d'ajax jquery
bonsoir merciii pour votre réponce,
je croix que ifModified va marcher du coté actualiser s'il y a une modification, mais comment je peut faire ceci tout le temps ? exemple sur facebook il y a une actualisation de contenu tout le temps sans événement.
merci bien.
Bonjour,
Avec la fonction setInterval il est possible de lancer un ajax vers le serveur tout les X secondes et ainsi vérifier si il y a des mises à jour faites dans la base de données.
Ex
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 // function mise_a_jour() { //ici on initialise un ajax vers le serveur + traitement des donnees +affichage dans une div si il le faut } //on utilise la fonction mise_a_jour toute les seconde setInterval(mise_a_jour,1000);
Merciiiii bcp pour votre réponse,
pour la fonction setInterval ça marche bien mais pour ifModified il y a un problème voici mon code
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
19 function actualiteTime(){ $.ajax({ type: "POST", url: basUrl+"/actualite/index", ifModified : true, data: "basUrl="+basUrl+"&typeUserAct=sup", success: function(msg,code){ if (code != "notmodified") { $('#actualite').html(msg); } } }); }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 setInterval(actualiteTime,30000);
le fichier php :
il ya un message d'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 header("Last-Modified: Sat, 26 Jul 1997 05:00:00 GMT", true, 304); //header('HTTP/1.1 304 Not Modified'); echo gmdate("D, d M Y H:i:s"); ........ d'autre code ........
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 aucun élément trouvé
Y'a un lien qui parle de ça ici
Je sais pas si c'est toujours fonctionnel avec les dernières versions de jquery.
Mais j'arrive pas à trouver un intérêt à cette fonction (ifModified) pour un usage avec une bdd...
merciiiiiiiiii beaucoup pour votre réponse, j'ai déjà vue cette discussion et j'ai appliqué la proposition de "marcha" mais ça marche pas, pour le moment je vais juste utiliser le truc d'actualisation puisque mes données ne sont pas lourd.
merciiiiiiiiiii bcp
Et d'après ce que j'ai compris l'utilisation de ifModified permet de simplement ne pas rafraichir les données affichées, mais une requête est de toute façon nécessaire pour savoir si oui ou non il faut rafraichir ton affichage.
Tu peux bien faire l'équivalent sans l'utilisation de ifModified.
Par exemple côté php tu enregistre le résultat de la requête dans une variable de session et pour les requêtes suivantes tu compare le résultat (un champ datetime qui indique la date et l'heure de modification par exemple) avec celui enregistré dans ta variable de session. En fonction du résultat tu retourne les valeurs ou un header("HTTP/1.1 304 Not Modified");
Te reste plus qu'à tester la valeur de retour de textStatus dans le success de la fonction ajax et tu fais ou non l'actualisation.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 success: function(result,textStatus) { if (textStatus == 'success') // Si la requête retourne 0 (le nom est disponible) { // on actualise le contenu } else { //on fait rien }
merciiiiiiiiiii beaucoup j'ai croyé que la fonction ifmodified fait tout ça automatiquement, je vais essayer votre proposition apparemment il doit marcher merciiiii encore![]()
Partager