Support en Ligne
Avast! Pro-Antivirus 5   Vous recevez trop de spam?

[PHP] - Insertion d'un compteur de visite

[PHP] - Insertion d'un compteur de visite

Messagede Baborge77 » Jeu 27 Nov 2008 13:43

Insertion d'un compteur de visite:

Le code à insérer sur chaque page:
Code: Tout sélectionner

<?php include('compteur_page.php?id_agence=26');?>



code de la page 'compteur_page.php':
Code: Tout sélectionner
<?php
$db = @mysql_connect("", "utilisateur", "passe");
@mysql_select_db('compteur',$db);
// Recherche si le visiteur est d�j�� dans la base de donn�es pour ce jour
$query = "SELECT ip, date, nbpage, id_agence FROM  `cpt_visiteur` WHERE ip='".$_SERVER['REMOTE_ADDR']."' AND date='".date("Y-m-d")."' AND id_agence = $idAgence ";
$req = @mysql_query($query) or die('Erreur : '.mysql_error() . email_erreur($query,  mysql_error() , $myfichier ));
//  Si il n'y est pas
if( @mysql_num_rows($req) == 0 ){
//  Ajoute son IP et la date de visite dans la base de donn�es
   $query = "INSERT INTO cpt_visiteur (ip, date, nbpage, id_agence) VALUES('".$_SERVER['REMOTE_ADDR']."', '".date("Y-m-d")."','1', $idAgence)";
   $req = @mysql_query($query) or die('Erreur : '.mysql_error() . email_erreur($query,  mysql_error() , $myfichier ));
}else{
//  Sinon incr�mente son nombre visite
$data = @mysql_fetch_array($req);
$data[2]++;
$query = "UPDATE cpt_visiteur SET nbpage='".$data[2]."' WHERE ip='".$_SERVER['REMOTE_ADDR']."' AND date='".date("Y-m-d")."' AND id_agence = $idAgence ";
   @mysql_query($query) or die('Erreur : '.mysql_error() . email_erreur($query,  mysql_error() , $myfichier ));
}
$aryDateMaintenant = explode("-",date("d-m-Y"));
$annee = $aryDateMaintenant[2];
$mois = $aryDateMaintenant[1];
//  Recherche si la page a d�j�� �t� visit�e
$query = "SELECT page, nbr, mois, annee, id_agence FROM `cpt_page` WHERE page='".$myfichier."' AND mois=$mois AND annee=$annee AND id_agence=$idAgence AND ip='".$_SERVER['REMOTE_ADDR']."'";
$req = @mysql_query($query) or die('Erreur : '.mysql_error() . email_erreur($query,  mysql_error() , $myfichier ));
//  Si elle a d�j�� �t� vu
if( mysql_num_rows($req)!= 0 ){
//  Incr�mente le nombre de visite de cette page
$data = @mysql_fetch_array($req);
$data[1]++;
$query = "UPDATE cpt_page SET nbr='".$data[1]."' WHERE page='".$myfichier."' AND mois=$mois AND annee=$annee AND id_agence=$idAgence AND ip='".$_SERVER['REMOTE_ADDR']."' ";
   @mysql_query($query) or die('Erreur : '.mysql_error() . email_erreur($query,  mysql_error() , $myfichier ));
}else{
//  Sinon ajoue la page �� la base de donn�es
$query = "INSERT INTO cpt_page (page, nbr, mois, annee, id_agence, ip) VALUES('" . $myfichier . "','1', $mois, $annee, $idAgence, '".$_SERVER['REMOTE_ADDR']."')";
   @mysql_query($query) or die('Erreur : '.mysql_error() . email_erreur($query,  mysql_error() , $myfichier ));
}
?>




Cr�ation MySQL:

Code: Tout sélectionner

CREATE DATABASE `'compteur'` ;


#
# Structure de la table `cpt_page`
#

DROP TABLE IF EXISTS `cpt_page`;
CREATE TABLE `cpt_page` (
  `page` varchar(75) NOT NULL default '',
  `nbr` int(11) NOT NULL default '0',
  `mois` int(11) NOT NULL default '0',
  `annee` int(11) NOT NULL default '0',
  `id_agence` bigint(9) unsigned NOT NULL default '0',
  `ip` varchar(20) NOT NULL default '0.0.0.0'
) TYPE=MyISAM;
# --------------------------------------------------------

#
# Structure de la table `cpt_visiteur`
#

DROP TABLE IF EXISTS `cpt_visiteur`;
CREATE TABLE `cpt_visiteur` (
  `ip` varchar(20) NOT NULL default '',
  `date` date NOT NULL default '0000-00-00',
  `nbpage` int(11) NOT NULL default '0',
  `id_agence` int(20) NOT NULL default '0'
) TYPE=MyISAM;
# --------------------------------------------------------

#
# Structure de la table `phpbb_agence`
#

DROP TABLE IF EXISTS `phpbb_agence`;
CREATE TABLE `phpbb_agence` (
  `id_agence` bigint(9) unsigned NOT NULL auto_increment,
  `agence` varchar(150) NOT NULL default '_',
  `ville` varchar(100) NOT NULL default '_',
  `cp` int(5) NOT NULL default '0',
  PRIMARY KEY  (`id_agence`)
) TYPE=MyISAM;

dans notre exemple, nous gerons des visites de clients identifi�s par un id_agence
Avatar de l’utilisateur
Baborge77
Administrateur - Site Admin
 
Messages: 35
Inscription: Jeu 27 Aoû 2009 16:00

Retourner vers PHP

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

cron

PageRank Actuel