begin process at 2012 05 27 16:34:34
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > AFFICHAGE DES CONNECTÉS V 1.1

AFFICHAGE DES CONNECTÉS V 1.1


 Information sur la source

Note :
8,5 / 10 - par 2 personnes
8,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Divers Niveau :Initié Date de création :01/07/2002 Date de mise à jour :01/10/2002 20:24:38 Vu :7 541

Auteur : DuncanIdaho

Ecrire un message privé
Site perso
Commentaire sur cette source (13)
Ajouter un commentaire et/ou une note

 Description

Voila, un petit sscript d'affichage des conenctés tout con...

Il y a 2 modes : affichage des visiteurs et affichage des membres et des visiteurs conenctes.

Il faut ajouter la base MySql et modifier les parametres pr la connection a la base de données.  

Source

  • <?
  • // Auteur : Emmanuel Bouillon
  • // emmanuel@ti-progs.com
  • // http://www.ti-progs.com/
  • //Tables necessaire au script :
  • mysql_query("CREATE TABLE IF NOT EXISTS connectes (
  • id int(11) NOT NULL auto_increment,
  • ip varchar(15) NOT NULL default '',
  • time int(11) NOT NULL default '0',
  • membre varchar(30) NOT NULL default '',
  • KEY id (id)
  • ) TYPE=MyISAM;") ;
  • mysql_query("CREATE TABLE IF NOT EXISTS `visiteurs` (
  • `id` INT NOT NULL AUTO_INCREMENT,
  • `date` VARCHAR(10) NOT NULL,
  • `nbr` INT NOT NULL,
  • INDEX (`id`)
  • ) TYPE=MyISAM;") ;
  • //Pour activer le mode "membres", il suffit de mettre $membre=1; et que les memrbes qui passsent
  • //sur votre page aient (dans un cookie, par exemple) leur pseudo ou autre chose (du moment que la
  • //valeur est différente de "")
  • $membre=1;
  • // Parametres de conenction a la base de données
  • mysql_connect("localhost","root","") or die("Impossible de se connecter au serveur.");
  • mysql_selectdb("table") or die("Impossible de se connecter à la base de donnée.");
  • // reglez la variable $temps sur la durée moyenne d'un visiteur sur votre page
  • $temps=5*60;
  • $time= time();
  • $time2=time()-$temps;
  • $date=date("d/m/Y");
  • $requete= mysql_query("DELETE FROM `connectes` WHERE `membre`=deleted");
  • if (!$pseudo=="") { $requete= mysql_query("DELETE FROM `connectes` WHERE `membre`=\"$pseudo\" and `time`<$time2"); }
  • $date = date("d/m/Y");
  • $requete=mysql_query("select * from visiteurs where date=\"$date\"") ;
  • $ligne = mysql_fetch_object($requete);
  • $result = mysql_query("SELECT COUNT(id) FROM `connectes` WHERE `ip`=\"$REMOTE_ADDR\" and `time`>=\"$time2\"");
  • $nb = mysql_fetch_row($result);
  • $nb = $nb[0] ;
  • if ($nb==0) {
  • $requete = mysql_query("INSERT INTO `connectes` values ('',\"$REMOTE_ADDR\",\"$time\",\"$pseudo\")");
  • $requete = mysql_query("SELECT COUNT(id) FROM `visiteurs` WHERE `date`=\"$date\"");
  • $nb = mysql_fetch_row($requete);
  • $nb = $nb[0] ;
  • if ($nb==0) {
  • $requete = mysql_query("INSERT INTO `visiteurs` values ('',\"$date\",'1')");
  • } else {
  • $requete = mysql_query("SELECT * FROM `visiteurs` WHERE `date`=\"$date\"");
  • $ligne = mysql_fetch_object($requete) ;
  • $nbr=$ligne->nbr ;
  • $nbr++;
  • $requete= mysql_query("UPDATE `visiteurs` SET nbr=\"$nbr\" WHERE `date`=\"$date\"");
  • }
  • } else {
  • $result = mysql_query("SELECT * FROM `connectes` WHERE `ip`=\"$REMOTE_ADDR\" and `time`>=\"$time2\"");
  • $v = mysql_fetch_object($result);
  • $ide=$v->id;
  • $requete= mysql_query("UPDATE `connectes` SET time=$time WHERE `connectes`.`id`=$ide");
  • }
  • if ($membre==0) {
  • $result = mysql_query("SELECT COUNT(id) FROM `connectes` WHERE `time`>=\"$time2\"");
  • $nb = mysql_fetch_row($result);
  • $nb = $nb[0] ;
  • if ($nb<2) {
  • echo "<B>$nb</B> visiteur sur le site";
  • } else {
  • echo "<B>$nb</B> visiteurs sur le site";
  • }
  • } else {
  • $result = mysql_query("SELECT COUNT(id) FROM `connectes` WHERE `time`>=\"$time2\" and `membre`=\"\"");
  • $nbv = mysql_fetch_row($result);
  • $nbv = $nbv[0] ;
  • $result = mysql_query("SELECT COUNT(id) FROM `connectes` WHERE `time`>=\"$time2\" and `membre`<>\"\"");
  • $nbm = mysql_fetch_row($result);
  • $nbm = $nbm[0] ;
  • if ($nbm<2) {
  • echo "<B>$nbm</B> membre et ";
  • } else {
  • echo "<B>$nbm</B> membres et ";
  • }
  • if ($nbv<2) {
  • echo "<B>$nbv</B> visiteur sur le site";
  • } else {
  • echo "<B>$nbv</B> visiteurs sur le site";
  • }
  • }
  • $requete = mysql_query("SELECT * FROM `visiteurs` WHERE `date`=\"$date\"");
  • $ligne = mysql_fetch_object($requete) ;
  • $nbr=$ligne->nbr ;
  • echo "<BR><B>$nbr</B> visites aujourd'hui";
  • ?>
<?
// Auteur : Emmanuel Bouillon
// emmanuel@ti-progs.com
// http://www.ti-progs.com/

//Tables necessaire au script :
mysql_query("CREATE TABLE IF NOT EXISTS connectes (
  id int(11) NOT NULL auto_increment,
  ip varchar(15) NOT NULL default '',
  time int(11) NOT NULL default '0',
  membre varchar(30) NOT NULL default '',
  KEY id (id)
) TYPE=MyISAM;") ;


mysql_query("CREATE TABLE IF NOT EXISTS `visiteurs` (
             `id` INT NOT NULL AUTO_INCREMENT, 
             `date` VARCHAR(10) NOT NULL, 
             `nbr` INT NOT NULL,
             INDEX (`id`)
             ) TYPE=MyISAM;") ;

//Pour activer le mode "membres", il suffit de mettre $membre=1; et que les memrbes qui passsent
//sur votre page aient (dans un cookie, par exemple) leur pseudo ou autre chose (du moment que la
//valeur est différente de "")

$membre=1;

// Parametres de conenction a la base de données
mysql_connect("localhost","root","") or die("Impossible de se connecter au serveur.");
mysql_selectdb("table") or die("Impossible de se connecter à la base de donnée.");

// reglez la variable $temps sur la durée moyenne d'un visiteur sur votre page
$temps=5*60;
$time= time();
$time2=time()-$temps;
$date=date("d/m/Y");

 $requete= mysql_query("DELETE FROM `connectes` WHERE `membre`=deleted");
 
 if (!$pseudo=="") { $requete= mysql_query("DELETE FROM `connectes` WHERE `membre`=\"$pseudo\" and `time`<$time2"); }

 $date = date("d/m/Y");
 $requete=mysql_query("select * from visiteurs where date=\"$date\"") ;
 $ligne = mysql_fetch_object($requete);

$result = mysql_query("SELECT COUNT(id) FROM `connectes` WHERE `ip`=\"$REMOTE_ADDR\" and `time`>=\"$time2\"");
$nb = mysql_fetch_row($result); 
$nb = $nb[0] ;

if ($nb==0) {
  $requete = mysql_query("INSERT INTO `connectes` values ('',\"$REMOTE_ADDR\",\"$time\",\"$pseudo\")");
  $requete = mysql_query("SELECT COUNT(id) FROM `visiteurs` WHERE `date`=\"$date\"");
  $nb = mysql_fetch_row($requete); 
    $nb = $nb[0] ;
    if ($nb==0) {
      $requete = mysql_query("INSERT INTO `visiteurs` values ('',\"$date\",'1')");
    } else {
     $requete = mysql_query("SELECT * FROM `visiteurs` WHERE `date`=\"$date\"");
     $ligne = mysql_fetch_object($requete) ;
     $nbr=$ligne->nbr ;
     $nbr++;
     $requete= mysql_query("UPDATE `visiteurs` SET nbr=\"$nbr\" WHERE `date`=\"$date\"");
    }
} else {
  $result = mysql_query("SELECT * FROM `connectes` WHERE `ip`=\"$REMOTE_ADDR\" and `time`>=\"$time2\"");
  $v = mysql_fetch_object($result);
  $ide=$v->id;
  $requete= mysql_query("UPDATE `connectes` SET time=$time WHERE `connectes`.`id`=$ide");
}

if ($membre==0) {
  $result = mysql_query("SELECT COUNT(id) FROM `connectes` WHERE `time`>=\"$time2\"");
    $nb = mysql_fetch_row($result); 
    $nb = $nb[0] ;
    if ($nb<2) {
      echo "<B>$nb</B> visiteur sur le site";
    } else {
      echo "<B>$nb</B> visiteurs sur le site";
    }
} else {
  $result = mysql_query("SELECT COUNT(id) FROM `connectes` WHERE `time`>=\"$time2\" and `membre`=\"\"");
    $nbv = mysql_fetch_row($result); 
    $nbv = $nbv[0] ;
  $result = mysql_query("SELECT COUNT(id) FROM `connectes` WHERE `time`>=\"$time2\" and `membre`<>\"\"");
    $nbm = mysql_fetch_row($result); 
    $nbm = $nbm[0] ;
    
    if ($nbm<2) {
      echo "<B>$nbm</B> membre et ";
    } else {
      echo "<B>$nbm</B> membres et ";
    }
    
    if ($nbv<2) {
      echo "<B>$nbv</B> visiteur sur le site";
    } else {
      echo "<B>$nbv</B> visiteurs sur le site";
    }
    
}



$requete = mysql_query("SELECT * FROM `visiteurs` WHERE `date`=\"$date\"");
     $ligne = mysql_fetch_object($requete) ;
     $nbr=$ligne->nbr ;

echo "<BR><B>$nbr</B> visites aujourd'hui";

?>

 Conclusion

Maintenant, auto-ajout des tables necessaires :)

Si vous faites :
  $requete=mysql_query("SELECT * FROM `connectes` WHERE `connectes`.`membre`&lt;&gt;'' and `connectes`.`time`&gt;=\"$time2\"");
while ($ligne = mysql_fetch_object($requete)) {
$requete2=mysql_query("SELECT * FROM `users` WHERE `users`.`pseudo`=\"$ligne-&gt;membre\"");
$user = mysql_fetch_object($requete2);
ligne-&gt;membre&l t;BR&gt;";
}


 Sources du même auteur

PWSPHP V 1.0 FINALE : UN PORTAIL EN PHP ENTIEREMENT CONFIGUR...
CHAMPS D'UNE TABLE
PWSPHP, UN PORTAIL EN PHP VERSION 1 BETA 4

 Sources de la même categorie

Source avec une capture MODULE JOOMLA 1.5 NOW LISTENING par Alcantornet
Source avec Zip Source avec une capture UPLOAD CENTER par basssem81
Source avec Zip COMPTEUR DE CLIQUE PHP AVEC JQUERY par devgoneti
Source avec Zip LIVRE D'OR SIMPLE (POUR DÉBUTANT) par devgoneti
Source avec Zip SCRIPT TRAVAUX POUR VOTRE SITE par FleuryK

Commentaires et avis

Commentaire de Dean le 08/07/2002 21:20:46

pas mal
Un truc qui aurait été sympa (pour améliorer le script) : créer la table automatiquement si celle-ci n'existe pas.

Commentaire de DuncanIdaho le 08/07/2002 22:42:15

Oué, pk pas
je le ferais qd j'aurais le tps :)

Commentaire de Tomcube le 24/07/2003 14:15:44

J'ai vite survolé le script mais je voudrais avoir des précisions sur son fonctionnement. Comment savoir quand un visiteur quitte le site ?? Est-ce qu'a chaque fois que le visiteur change de page sur le site, ça rajoute du "temps passé" sur le site ??
C'est un module qui m'interesse beaucoup pour la nouvelle version d'un site qui est en préparation.

Commentaire de DuncanIdaho le 08/08/2003 21:58:52

Un visiteur quitte le site quand (pour le script) il n'a pas vu de page depuis 5 min

Quiand un visiteur change de page, le temps est mis a jour, c tout :/

@++

Commentaire de lastwhirlwind le 28/10/2003 00:03:26

ca m'a l'air bien
pour l'instant pas de bugs du bon boulot ;)

Commentaire de msystar le 18/03/2005 20:33:01

le script m'interesse mais je ne parviens pas a l'exploiter.
je rappelle que je debute en php et tout m'interesse sur ce module.
Pouvez vous me donner plus d'explication sur so fonctionnement

Commentaire de ptipat le 28/04/2010 15:02:24

bonjour , c'est le script que je cherchait , par contre je n'arrive pas a incrémenter la table .

$requete=mysql_query("SELECT * FROM `connectes` WHERE `connectes`.`membre`&lt;&gt;'' and `connectes`.`time`&gt;=\"$time2\"");
while ($ligne = mysql_fetch_object($requete)) {
$requete2=mysql_query("SELECT * FROM `users` WHERE `users`.`pseudo`=\"$ligne-&gt;membre\"");
$user = mysql_fetch_object($requete2);
ligne-&gt;membre&lt ;BR&gt;";
}

sa me met une erreur


MySQL a répondu:Documentation
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '$requete=mysql_query("SELECT * FROM `connectes` WHERE `connectes`.`membre`&lt;&g' at line 1

quelqu'un pourrai t'il m'aider , je débute et suis complètement perdu

merci a vous

Commentaire de DuncanIdaho le 28/04/2010 15:13:36

Punaise, un commentaire sur ma source 8 après, j'hallucine XD


Ah, je vois... Le texte a été "corrompu", il faut remplacer les "&gt;" par ">" et les "&lt;" par "<" ;-)

Commentaire de ptipat le 28/04/2010 15:38:40

hé oui y faut s'attendre a tout , donc après remplacement cela doit donner ceci , non


$requete=mysql_query("SELECT * FROM `connectes` WHERE `connectes`.`membre`<>;'' and `connectes`.`time`>;=\"$time2\"");
while ($ligne = mysql_fetch_object($requete)) {
$requete2=mysql_query("SELECT * FROM `users` WHERE `users`.`pseudo`=\"$ligne->;membre\"");
$user = mysql_fetch_object($requete2);
ligne->;membre&lt ;BR>;";
}

Commentaire de ptipat le 28/04/2010 15:41:04

car maintenant sa me donne ce message

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '$requete=mysql_query("SELECT * FROM `connectes` WHERE `connectes`.`membre`<>;'' ' at line 1

Commentaire de DuncanIdaho le 28/04/2010 15:45:48

Non : tu converti "&lt" en ">" au lien de "&lt;" ;-)

Par contre, je ne comprends plus mon code, je pense qu'il y a une erreur... Ca ne doit pas etre

`connectes`.`membre`<>''
mais
`connectes`.`membre`!=''


Bon, voici le code repris et - a priori - corrigé (y'avait d'autres erreurs)

$requete=mysql_query("SELECT * FROM `connectes` WHERE `connectes`.`membre`!='' and `connectes`.`time`>=\"$time2\"");
while ($ligne = mysql_fetch_object($requete)) {
$requete2=mysql_query("SELECT * FROM `users` WHERE `users`.`pseudo`=\"$ligne->membre\"");
$user = mysql_fetch_object($requete2);
echo $ligne->membre."<BR>";
}

par contre, il faut la table "users" ^^

Commentaire de ptipat le 28/04/2010 16:00:45

désoler je débute , comment sa la table user , sinon toujours erreur quand je veux importer ou exécuter le fichier sql ci dessus , car mi ce que je veux , c'est le nombre en ligne de visiteur , le nombres de membres inscrit  , et ci possible le nombre de membres connecter

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '$requete=mysql_query("SELECT * FROM `connectes` WHERE `connectes`.`membre`!='' a' at line 1

Commentaire de DuncanIdaho le 28/04/2010 16:04:20

En fait, le deuxième script sert à afficher les membres connectés.

Si tu n'as pas de système de membre, ce n'est pas utile et tu devrais pouvoir te contenter de la première partie ;-)

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,061 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales