Afficher la liste des connectés sur le site.

...Avertissement :


Ces fonctions sont utilisées dans ce code source:
mysql_close()   mysql_connect()   mysql_fetch_array()   mysql_num_rows()   mysql_query()   mysql_select_db()   

Ces extensions étaient obsolètes en PHP 5.5.0, et ont été supprimées en PHP 7.0.0. À la place, vous pouvez utiliser l'extension MySQLi ou l'extension PDO_MySQL. Voir aussi MySQL : choisir une API du guide et ces entrées de la FAQ pour plus d'informations. Alternatives à cette fonction :
mysqli_connect()
PDO::__construct()
    01 Sept 2004  

      Afficher la liste des connectés sur le site.

Ce code sert à afficher la liste des connectés sur le site.

On stoque l'ip du visiteur, son pseudo (s'il est logé) et sa date de dernière visite
R@f 01 Sept 2004
# Catégorie Compatibilité Nombre de vues Site Archive
   Divers PHP 4, PHP 5 18 237  

       Code Source PHP


 
 01    
 02    
 03    
 04    
 05    
 06    
 07    
 08    
 09    
 10    
 11    
 12    
 13    
 14    
 15    
 16    
 17    
 18    
 19    
 20    
 21    
 22    
 23    
 24    
 25    
 26    
 27    
 28    
 29    
 30    
 31    
 32    
 33    
 34    
 35    
 36    
 37    
 38    
 39    
 40    
 41    
 42    
 43    
 44    
 45    
 46    
 47    
 48    
 49    
 50    
 51    
 52    
 53    
 54    
 55    
 56    
 57    
 58    
 59    
 60    
 61    
 62    
 63    
 64    
 65    
 66    
 67    
 68    
 69    
 70    
 71    
 72    
 73    
 74    
 75    
 76    
 77    
 78    
 79    
 80    
 81    
 82    
 83    
 84    
 85    
 86    
 87    
 88    
 89    
 90    
 91    
 92    
 93    
 94    
 95    
 96    
 97    
 98    
 99    
 100    
 101    
 102    
 103    
 104    
 105    
 106    
 107    
 108    
 109    
 110    
 111    
 112    
 113    
 114    
 115    
 116    
 117    
 118    
 119    
 120    
 121    
 122    
 123    
 124    
 125    
 126    
 127    
 128    
 129    
 130    
 131    
                               
<?php
/**************************************************************************************/
/*
     Titre  : Afficher la liste des connectés sur le site.                                                                
                                                                                                                          
     URL    :  
     https://phpsources.net/code/php/divers/52_afficher-leliste-des-connectes-sur-le-site
     Auteur         : R@f                                                                                                 
     Date edition   : 01 Sept 2004                                                                                        
*/
/**************************************************************************************/
/*
Création de la table MySQL
CREATE TABLE `connectes` (
    `ip` varchar(20) NOT NULL default '',
    `derniere` int(9) unsigned NOT NULL default '0',
    `pseudo` varchar(32) NOT NULL default '',
    PRIMARY key (`ip`)
) TYPE=MyISAM;
*/
// fonction a appeler au début  de vos pages
function connectes()
{
    $temps 5;
    
    if(mysql_connect(BDD_HOSTBDD_PSEUDOBDD_PASS))
        mysql_select_db(BDD_BDD);
    else
        return;
        
    // ip du client
    $ip $_SERVER['REMOTE_ADDR'];
    
    // pseudo
    $pseudo = empty($_SESSION['nom']) ? '' $_SESSION['nom'];
    
    // time actuel
    $time time();
    // on recherche l'utilsateur
    $sql_query "SELECT * FROM connectes where ip='$ip'";
    $result mysql_query($sql_query);
    
    if(!$result)
        return;
    
    // si l'utilisateur n'est pas deja dans la table
    if(mysql_num_rows($result) == 0)
    {
    $sql_query "INSERT INTO connectes VALUES ('$ip', '$time', '$pseudo')";
        $result mysql_query($sql_query);
        
        if(!$result)
            return;
    }
    // mise-à-jour
    else
    {
$sql1="UPDATE connectes SET derniere='$time',pseudo='$pseudo' WHERE ip='$ip'";
        
        $result mysql_query($sql1);
        
        if(!$result)
            return;
    }
    
    // temps d'incativité
    $time -= $temps 60;
    
// on supprime ceux qui n'ont pas été connectés depuis assez longtemps
$sql_query "DELETE LOW_PRIORITY FROM connectes WHERE derniere <= $time";
$result mysql_query($sql_query);
    
    mysql_close();
}
// Affichage des connectés, à mettre ou vous voulez ;-)
$stop 0;
            
if(mysql_connect(BDD_HOSTBDD_PSEUDOBDD_PASS))
    mysql_select_db(BDD_BDD);
else
    $stop 1;
                        
if(!$stop)
{
    $sql_query "SELECT pseudo FROM connectes WHERE pseudo <> ''";
    $result mysql_query($sql_query);
                        
    if(!$result)
        $stop 1;
    else
    {
        echo '<font color="#0000FF">Connectés:</font><br>';
                            
        while($connecte mysql_fetch_array($result))
            echo $connecte[0] . '<br>';
    }   
}
                    
if($stop == 0)
{
    $sql_query "SELECT count(*) FROM connectes WHERE pseudo = ''";
    $result mysql_query($sql_query);
                        
    if($result)
    {
    $visiteurs mysql_fetch_array($result);
                            
    echo '<br><font color="#0000FF">Visiteurs:</font><br>' $visiteurs[0];
    }
}
                    
mysql_close();
?>
**********************************************
-----------------------------
Voici ce qu'il faut changer:
-----------------------------
Dans la fonction connectes: 
- $temps = 5; // nombre de minute d'inactivité
avant de supprimer un membre de la liste des connectes
- if(mysql_connect(BDD_HOST, BDD_PSEUDO, BDD_PASS))
mysql_select_db(BDD_BDD); //infos de connection à mysql
- Pour le pseudo du visiteur, j'utilise une variable de session
nommée nom, vous pouvez changer la ligne suivante:
$pseudo = empty($_SESSION['nom']) ? '' : $_SESSION['nom'];
Script d'affichage:
if(mysql_connect(BDD_HOST, BDD_PSEUDO, BDD_PASS))
mysql_select_db(BDD_BDD);
***************************************************

...  Manuel PHP - Fonctions du code source

   php.net  Description Versions PHP OUTIL
   echo Affiche une chaîne de caractères PHP 4, PHP 5, PHP 7
   empty Détermine si une variable contient une valeur non nulle PHP 4, PHP 5, PHP 7
   mysql_close Ferme la connexion MySQL - (PHP 4, PHP 5, PECL mysql:1.0)   !  OBSOLÈTE en PHP 5.5.0, et ont été supprimées en PHP 7.0.0
   mysql_connect Ouvre une connexion à un serveur MySQL - (PHP 4, PHP 5, PECL mysql:1.0)   !  OBSOLÈTE en PHP 5.5.0, et ont été supprimées en PHP 7.0.0
   mysql_fetch_array - (PHP 4, PHP 5, PECL mysql:1.0)   !  OBSOLÈTE en PHP 5.5.0, et ont été supprimées en PHP 7.0.0
   mysql_num_rows Retourne le nombre de lignes d'un résultat MySQL - (PHP 4, PHP 5, PECL mysql:1.0)   !  OBSOLÈTE en PHP 5.5.0, et ont été supprimées en PHP 7.0.0
   mysql_query Envoie une requête à un serveur MySQL - (PHP 4, PHP 5, PECL mysql:1.0)   !  OBSOLÈTE en PHP 5.5.0, et ont été supprimées en PHP 7.0.0
   mysql_select_db Sélectionne une base de données MySQL - (PHP 4, PHP 5, PECL mysql:1.0)   !  OBSOLÈTE en PHP 5.5.0, et ont été supprimées en PHP 7.0.0
   time Retourne le timestamp UNIX actuel PHP 4, PHP 5, PHP 7
Logiciels PHP  

    Les dernières parutions de scripts PHP

PrestaShop 1.7.6.0

 
Langue drapeau fr
Date  aujourd'hui
Taille 59 Mo
Catégorie Ecommerce

PhpList 3.4.4

 
Langue drapeau us
Date 12 Juil
Taille 27 Mo
Catégorie Emailing

Joomla 3.9.10

 
Langue drapeau fr
Date 12 Juil
Taille 13 Mo
Catégorie CMS

TYPO3 9.5.8

 
Langue drapeau da
Date 10 Juil
Taille 35 Mo
Catégorie CMS


  • L'ajout de commentaire est libre et ne demande pas d'inscription,
  •   invité

nous vous encourageons à contribuer à l'utilisation de PHP en ajoutant vos remarques.

[3]

  • ...

    Patrick

    28 Sept 2005 à 16:05

    bonjour et merci pour tous les sript. j'essaye de faire marcher le script
    "Afficher la liste des connectés sur le site"
    j'ai l'erreur suivante :
    Parse error: parse error, unexpected T_VARIABLE in /var/www/free.fr/d/b/projeteurasien/qui.php on line 16
    merci pour votre aide
    patrick

  • ...

    Invité

    30 Nov 2007 à 23:07

    j'ai aucune erreur mais rien ne s'affiche ??
    et rien ne s'enregistre dans la bdd ??

  • ...

    Invité

    15 Oct 2009 à 00:04

    Moi ça fonctionne mais ca supprime juste le pseudo dans la table et non toute l'entré et c'est bien embêtant car visiteur augmente toujours et si on ferme le navigateur en postant un message alors l'entré n'est pas supprimé