Recharger un bout de code php toute les x secondes

Fermé
Utilisateur anonyme - 11 févr. 2017 à 18:55
 Utilisateur anonyme - 12 févr. 2017 à 20:33
Bonjour,
j'ai un code de déconnexion automatique :
function deco_auto($temps_minute){ 
	if(isset($_SESSION['id'])){
        if(is_valid_userpanel()){
		  if(!isset($bdd)){
		  	$bdd = connexion_bdd("administration");
		  } 
		  $times_limit = (60*$temps_minute);
		  	if($_SESSION['timeout'] + $times_limit <= time()) {
                header('Location: deconnexion.php?id_membre='.$_SESSION['panel_id'].'&token='.$_SESSION['token_panel']);
		  	} else {
 	 	    		$_SESSION['timeout'] = time();
		  	}
        }
	}
}

et j'aimerais savoir comment vérifier toutes les x secondes si les variables
$_SESSION['timeout']
+
$times_limit
sont supérieurs à
time()
...
Merci beaucoup
Nils0
A voir également:

4 réponses

Utilisateur anonyme
11 févr. 2017 à 19:05
A vrai dire je comprend pas trop pourquoi tu veux faire ça, pourquoi lancer le script tout les x secondes alors que tu as juste à mettre ce script sur chaque page pour vérifier si la personne à lancer une requête après le timeout et donc le déco.
0
zucrezel Messages postés 30 Date d'inscription mardi 7 février 2017 Statut Membre Dernière intervention 19 juillet 2017 4
11 févr. 2017 à 19:15
Peut-être avec un timer en javascript (setTimeout) et ajax pour l'appel de la fonction php.
0
yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 Ambassadeur 1 554
11 févr. 2017 à 19:22
bonjour,
tu ne peux manipuler les variables $_SESSION que lorsque le code php est exécuté suite à un url reçu dans le contexte de cette session.
donc, si tu veux vraiment travailler comme tu le décris, c'est plutôt du coté du navigateur que tu dois automatiser l'appel régulier de la page php.
qu'essaies-tu de réaliser exactement?
0
Utilisateur anonyme
11 févr. 2017 à 19:38
J'ai un espace admin et a chaque page je vérifie si le temps limite est dépassé et si oui, Le script marche très bien sauf que il faut que je clique sur le lien d'une autre page ou que je recharge la page pour être déconnecter et rediriger.
Et donc, je voudrais savoir comment être déconnecté sans avoir a recharger la page ...
Merci
0
yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 1 554 > Utilisateur anonyme
11 févr. 2017 à 20:34
eh bien, tu ne peux pas être déconnecté sans que le navigateur envoie un url au serveur.
si tu veux être informé immédiatement, tu dois automatiser le travail du côté du navigateur.
0
Utilisateur anonyme
11 févr. 2017 à 20:37
En fait, j'aimerais faire comme PhpMyAdmin, phpmyadmin recharge la page automatiquement et nous déconnecte, j'aimerais faire la même chose
Merci
0
Utilisateur anonyme
11 févr. 2017 à 20:48
A vrai dire il y a un truc très bien qui se nomme EventSource, c'est du JS:
https://developer.mozilla.org/fr/docs/Web/API/EventSource

Bon le support est inexistant sur IE mais le reste fonctionne.

Là c'est une connexion permanente du serveur au client (mais pas l'inverse), donc le script s’exécute presque tout le temps, et donc dès que la session est terminée, PHP envois un message au client, et là tu recharges la page ou redirige, mais cette fois il n'y a plus de session
0
Utilisateur anonyme
11 févr. 2017 à 20:57
ok merci beaucoup je vais voir ce que je peux faire
0
yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 Ambassadeur 1 554
12 févr. 2017 à 15:06
je te suggère de d'abord décrire ce que tu veux obtenir, puis comment tu vas le réaliser, avant de plonger dans le code.
0
Utilisateur anonyme
12 févr. 2017 à 16:12
ok je vais voir ça
0
Utilisateur anonyme
12 févr. 2017 à 17:47
J'ai fais l'exemple qui marche mais je ne vois pas comment modifier le code pour ce que je voudrais faire
0
Utilisateur anonyme
12 févr. 2017 à 17:56
en cherchant un peu j'ai fini par trouver: http://forum.phpdebutant.org/viewtopic.php?id=17691
0
Utilisateur anonyme
12 févr. 2017 à 20:33
c'est ce que je veux mais en php
0