Voici un petit script qui peut s'en doute être ameliorer :
la table :
la table :
Code PHP :
<?php
CREATE TABLE connecte (
id int(20) NOT NULL auto_increment,
pseudo varchar(255) NOT NULL default '',
timestamp varchar(255) NOT NULL default '',
connecte char(2) NOT NULL default '',
PRIMARY KEY (id)
) TYPE=MyISAM;
le code :
Code PHP :
<?php
session_start(); /// on demarre la session
mysql_connect(host, username, password); /// identifiant pour la bdd
mysql_select_db(bdd_name);
$pseudo = $_SESSION['login'];
///// on se connecte à la table "connecte "
$retour_connecte = mysql_query('SELECT COUNT(*) AS nbre_pseudo FROM connecte WHERE pseudo = '.$pseudo.' ');
$donnees = mysql_fetch_array($retour_connecte);
///// et on cherche si sont pseudo et dedant la table !
if ($donnees['nbre_pseudo'] == 0) /// si il n'y est pas ...
{
////// on l'insert dans la table.
mysql_query('INSERT INTO connecte (id,pseudo,timestamp,connecte) VALUES('','.$pseudo.', ' . time() . ',1)');
}
else //// sinon
{
////// on mais à jour le temp (time())
mysql_query('UPDATE connecte SET connecte=1,timestamp=' . time() . ' WHERE pseudo='.$pseudo);
}
$timestamp_1min = time() - (60 * 1); //// 60 * 1 = 1 minute
mysql_query('DELETE FROM connecte WHERE timestamp < ' . $timestamp_1min); ////// supprimé tout pseudo dont le timestamp est inférieur à 1 minute ! (vous pouvez changer 1 minute par 5 mm ou plus)
////// ce morceau compte le nombre de membre ayant le statut 1 dans le champ "connecte" de la table connecte :p
$donnees_connecte_count = mysql_query('SELECT COUNT(*) AS nbre_pseudo FROM connecte WHERE connecte = 1');
while($donnees_count = mysql_fetch_array($donnees_connecte_count))
{
if($donnees_count['nbre_pseudo'] <= 0) //// si aucun pseudo à le status 1 alors il n'y à aucun membre connecte à l'espace membre !
echo 'Il n\'y à pas de membres connectés.'; ///// qu'est-ce que je disais :p
$donnees_connecte = mysql_query('SELECT * FROM connecte WHERE connecte = 1'); /// en revanche si il y à un/des connecté(s) !!
while($donnees_pseudo = mysql_fetch_array($donnees_connecte))
{
$connecte = $donnees_pseudo['pseudo']; /// on les affiches ..
echo $connecte; /// ici
}
}
?>