Tester si l'utilisateur est toujours actif chauque 10 secondes

Fermé
samiker - Modifié par samiker le 8/12/2014 à 11:46
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 - 10 déc. 2014 à 21:59
Salut les ami(e)s

j'aimerais pouvoir vérifier que l'utilisateur connecter est toujours présent et générer chaque période une alerte qui lui demande si il veut poursuivre .

pour cela j'ai essayé de faire ce petit code qui affiche une popup de confirmation et qui termine la session après une période mais j'ai pas pu faire ce que je veux :/

voila le code :
<?php
   
//no direct accees
//defined ('_JEXEC') or die ('resticted aceess'); 
 
             /*            cette page sert a connecter le site avec la base de donnée          */
        $base = mysql_connect ('localhost', 'root', '');
        mysql_select_db ('admin', $base);
 
 
        $timeout = 10000; // Number of seconds until it times out.
      
 // Check if the timeout field exists.
if(isset($_SESSION['timeout']))
{
        // See if the number of seconds since the last
        // visit is larger than the timeout period.
        $duration = time() - (int)$_SESSION['timeout'];
if($duration > $timeout)
{
            // Destroy the session and restart it.
            session_destroy();
            session_start();
}
 
 
}
      
    // Update the timout field with the current time.
    $_SESSION['timeout'] = time();
 
 
?>
 
<script type="text/javascript">
 
    setTimeout(function(){
 
  var r = confirm("Press a button!");
    if (r == true) {
        txt = "Votre Session sera expirer dans 7secondes cliquez ici pour rester actif  ";
       
    }
    }, 3000);
 
         
</script>

ça sera sympa si vous m'aidez a résoudre mon problème merci d'avance
A voir également:

1 réponse

mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
10 déc. 2014 à 21:56
Bonsoir,

Pourquoi voulez-vous vérifier qu'il est connecté?

Le principe d'une appli web s'est justement de s'affranchir de la "connexion permanente"....

Quand un internaute demande une page, il fait une requête auprès d'un serveur. Le serveur reçoit la requête, traite les données, renvoie les infos, les images, puis plie les gaules, va pioncer un bout jusqu'à la prochaine requête....

Structurellement, la notion de connexion permanente est donc un "non sens" tel que fonctionnent les serveurs web.

D'ailleurs, vous n'avez aucun intérêt à solliciter votre serveur, car imaginez 100 utilisateurs à contrôler toutes les 10 sec chacun, ça fait 10 requêtes secondes... Là vous écroulez un hébergement basique et votre hébergeur, au bout de 8 jours, il vous présente la facture pour avoir bouffé toute la bande passante de sa connexion...

A+
0
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
Modifié par mpmp93 le 10/12/2014 à 22:00
Je rajoute que vous avez une instruction <META ....refresh.../> en HachTeuMeuLeu qui peut forcer une reconnexion dans un délai défini....

Donc problème faisable en une ligne de code:

 <meta http-equiv="refresh" content="10">


Et là, vot'gars, il a même pas à cliquer....

A+
0