bonsoir
ma base de données est chez phpmyadmin.1and1.fr/
voila le code php sur une page .php (essais.php)
voila la fonction include dans mes pages
Code : PHP
chez 1and1 j'ai bien ma base de donnes et ma table qui elle est "news"
sur les pages de mon site il y a bien "il y a actuellement 0 visiteurs connectees sur le site " mais le 0 ne bouge pas rien ne s'enregistre sur ma base
que peut il se passer?
patrick
Modifié par absalonp (10 Jan 2007 - 02:22)
ma base de données est chez phpmyadmin.1and1.fr/
voila le code php sur une page .php (essais.php)
<?php
// Connexion à MySQL
mysql_connect(" ", " ", " ");
mysql_select_db(" ")or die(mysql_error());
// -------
// ETAPE 1 : on vérifie si l'IP se trouve déjà dans la table
// Pour faire ça, on n'a qu'à compter le nombre d'entrées dont le champ "ip" est l'adresse ip du visiteur
$retour = mysql_query('SELECT COUNT(*) AS nbre_entrees FROM news WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\'');
$donnees = mysql_fetch_array($retour)or die(mysql_error());
if ($donnees['nbre_entrees'] == 0) // L'ip ne se trouve pas dans la table, on va l'ajouter
{
mysql_query('INSERT INTO connectes VALUES(\'' . $_SERVER['REMOTE_ADDR'] . '\', ' . time() . ')');
}
else // L'ip se trouve déjà dans la table, on met juste à jour le timestamp
{
mysql_query('UPDATE connectes SET timestamp=' . time() . ' WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\'');
}
// -------
// ETAPE 2 : on supprime toutes les entrées dont le timestamp est plus vieux que 5 minutes
// On stocke dans une variable le timestamp qu'il était il y a 5 minutes :
$timestamp_5min = time() - (60 * 5); // 60 * 5 = nombre de secondes écoulées en 5 minutes
mysql_query('DELETE FROM connectes WHERE timestamp < ' . $timestamp_5min);
// -------
// ETAPE 3 : on compte le nombre d'ip stockées dans la table. C'est le nombre de visiteurs connectés
$retour = mysql_query('SELECT COUNT(*) AS nbre_entrees FROM news');
$donnees = mysql_fetch_array($retour)or die(mysql_error());
// Ouf ! On n'a plus qu'à afficher le nombre de connectés !
echo '<p>Il y a actuellement ' . $donnees['nbre_entrees'] . ' visiteurs connectés sur le site !</p>';
?>
voila la fonction include dans mes pages
Code : PHP
<? include ('essais.php'); ?>
chez 1and1 j'ai bien ma base de donnes et ma table qui elle est "news"
sur les pages de mon site il y a bien "il y a actuellement 0 visiteurs connectees sur le site " mais le 0 ne bouge pas rien ne s'enregistre sur ma base
que peut il se passer?
patrick
Modifié par absalonp (10 Jan 2007 - 02:22)