Wars007
Messages postés28Date d'inscriptionsamedi 1 mai 2004StatutMembreDernière intervention15 novembre 2004
-
6 juin 2004 à 16:31
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 2013
-
22 juin 2005 à 16:29
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
// 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
{
$sql_query = "UPDATE connectes SET derniere='$time', pseudo='$pseudo' WHERE ip='$ip'";
$result = mysql_query($sql_query);
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();
}
connectes();
// Affichage des connectés, à mettre ou vous voulez ;-)
$stop = 0;
j'ai erreur ligne 11 et 69
if(mysql_connect($shost,$suser,$spass))
Warning: mysql_connect(): Access denied for user: 'ODBC@localhost' (Using password: NO) in .\connecter.php on line 11
Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in .\connecter.php on line 69
pk sa marche po?
flashfun
Messages postés296Date d'inscriptionmercredi 10 septembre 2003StatutMembreDernière intervention11 septembre 2004 20 août 2004 à 18:39
Pour vérifier le programme, insérez un
echo "Voici ou c'est rendu.";
avant chaque
return
.
Wars007
Messages postés28Date d'inscriptionsamedi 1 mai 2004StatutMembreDernière intervention15 novembre 2004 9 juin 2004 à 12:57
oui mais sa psot pas dans la sql !!
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 8 juin 2004 à 15:45
Je t'ai proposé une petite modif pour tenir compte de ta variable pseudo, que tu n'as pas voulue, je vais pas te refaire complètement le script!
@++
R@
Wars007
Messages postés28Date d'inscriptionsamedi 1 mai 2004StatutMembreDernière intervention15 novembre 2004 8 juin 2004 à 14:50
t1 mais sa ve pas enregsitrer dans la table les donner du pseudo !!!
Wars007
Messages postés28Date d'inscriptionsamedi 1 mai 2004StatutMembreDernière intervention15 novembre 2004 8 juin 2004 à 13:22
je n'y arrive pas help me!!!
Wars007
Messages postés28Date d'inscriptionsamedi 1 mai 2004StatutMembreDernière intervention15 novembre 2004 7 juin 2004 à 10:28
c pas bon regarde
$sql_query = "SELECT * FROM connectes where ip='$ip'";
la sa recherche l'ip pour stoker si oui ou non les pseudo est dans la table...ce ke je voudrais sa ke sa rechecrhe le pseudo et non l'ip!lol
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 7 juin 2004 à 10:24
Salut!
// fonction a appeler au début de vos pages
function connectes($pseudo)
{
$temps = 5;
// 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
{
$sql_query = "UPDATE connectes SET derniere='$time', pseudo='$pseudo' WHERE ip='$ip'";
$result = mysql_query($sql_query);
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();
}
Et apelle la fonction avec: connectes($pseudo); $pseudo valant '' si le gars ets pas connecte!
@++
R@f
Wars007
Messages postés28Date d'inscriptionsamedi 1 mai 2004StatutMembreDernière intervention15 novembre 2004 7 juin 2004 à 10:19
nan juste une varible $pseudo .. et pour l'ip je mais de coter sa me sert a rien!c possible de faire marcher ton script kavec les variable??
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 7 juin 2004 à 10:15
Salut!
L'ip est utile pour reprérer les visiteurs non enregistrés ainsi que ceux qui changent de pseudo en cours de route...
Ta variable pseudo est de quel type? Variable de session?
@++
R@f
Wars007
Messages postés28Date d'inscriptionsamedi 1 mai 2004StatutMembreDernière intervention15 novembre 2004 6 juin 2004 à 23:24
ma variable de mon chat c $pseudo comment faire pour tu sa cherche l'ip sur la table et affiche etc..on pe pas metre ke sa cherche lepseudo au lieu de l'ip??
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 6 juin 2004 à 21:53
Salut!
Ben je sais pas trop, car j'ai fais un copié coller du script ci-dessus et ca marche...
Si tu veux, contact moi par MP pour qu'on voie.
@++
R@f
Wars007
Messages postés28Date d'inscriptionsamedi 1 mai 2004StatutMembreDernière intervention15 novembre 2004 6 juin 2004 à 21:44
jarrive pas a faire fonctionez
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 6 juin 2004 à 18:32
Salut!
Je viens de faire un test, concluant, avec et sans valeur à $_SESSION['nom']...
Voici la version avec, oublie pas les infos de connection mysql
<?php
session_start();
$_SESSION['nom'] = 'raf';
// fonction a appeler au début de vos pages
function connectes()
{
$temps = 5;
if(mysql_connect(BDD_HOST, BDD_PSEUDO, BDD_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
{
$sql_query = "UPDATE connectes SET derniere='$time', pseudo='$pseudo' WHERE ip='$ip'";
$result = mysql_query($sql_query);
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();
}
connectes();
// Affichage des connectés, à mettre ou vous voulez ;-)
$stop = 0;
if(mysql_connect(BDD_HOST, BDD_PSEUDO, BDD_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 'Connectés:
';
while($connecte = mysql_fetch_array($result))
echo $connecte[0] . '
';
}
}
if($stop == 0)
{
$sql_query "SELECT count(*) FROM connectes WHERE pseudo ''";
$result = mysql_query($sql_query);
if($result)
{
$visiteurs = mysql_fetch_array($result);
echo '
Visiteurs:
' . $visiteurs[0];
}
}
mysql_close();
?>
Et il m'affichait bien:
Connectés:
raf
Visiteurs:
0
@++
R@f
Wars007
Messages postés28Date d'inscriptionsamedi 1 mai 2004StatutMembreDernière intervention15 novembre 2004 6 juin 2004 à 17:57
jarrive pas a le faire fonctionez sa enregistre rien dans la table sql
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 6 juin 2004 à 16:54
Salut!
J'ai pas trop compeis, c'est quoi le problème?
@++
R@f
Wars007
Messages postés28Date d'inscriptionsamedi 1 mai 2004StatutMembreDernière intervention15 novembre 2004 6 juin 2004 à 16:31
Il y a une erreur il ne faut pas mettre la function connectes() car sinon sa enregsitre pas dans la table sql
22 juin 2005 à 16:29
Normalement, c'est .inc.php: connect.inc.php pour éviter les pbs...
@++
R@f
21 juin 2005 à 15:42
tout le monde peu voir le fichier connect.inc donc les infos...
5 mars 2005 à 16:15
Les variables définies en dehors de fonctions ne sont pas accessibles par défaut...
Il faut commencer par les passer en global. Au début de la fonction, rajoute:
global $shost,$suser,$spass, $sbase;
@++
R@f
3 mars 2005 à 01:46
<?php
$shost = 'localhost';
$suser = 'root';
$spass = '';
$sbase = 'test';
?>
---connecter.php----
<?php
session_start();
$_SESSION['nom'] = 'raf';
include("connect.php");
// fonction a appeler au début de vos pages
function connectes()
{
$temps = 5;
if(mysql_connect($shost,$suser,$spass))
mysql_select_db($sbase, $connect);
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
{
$sql_query = "UPDATE connectes SET derniere='$time', pseudo='$pseudo' WHERE ip='$ip'";
$result = mysql_query($sql_query);
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();
}
connectes();
// Affichage des connectés, à mettre ou vous voulez ;-)
$stop = 0;
if(mysql_connect($shost,$suser,$spass))
mysql_select_db($sbase, $connect);
else
$stop = 1;
if(!$stop)
{
$sql_query = "SELECT pseudo FROM connectes WHERE pseudo <> ''";
$result = mysql_query($sql_query);
if(!$result)
$stop = 1;
else
{
echo 'Connectés:
';
while($connecte = mysql_fetch_array($result))
echo $connecte[0] . '
';
}
}
if($stop == 0)
{
$sql_query "SELECT count(*) FROM connectes WHERE pseudo ''";
$result = mysql_query($sql_query);
if($result)
{
$visiteurs = mysql_fetch_array($result);
echo '
Visiteurs:
' . $visiteurs[0];
}
}
mysql_close();
?>
j'ai erreur ligne 11 et 69
if(mysql_connect($shost,$suser,$spass))
Warning: mysql_connect(): Access denied for user: 'ODBC@localhost' (Using password: NO) in .\connecter.php on line 11
Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in .\connecter.php on line 69
pk sa marche po?
20 août 2004 à 18:39
echo "Voici ou c'est rendu.";
avant chaque
return
.
9 juin 2004 à 12:57
8 juin 2004 à 15:45
@++
R@
8 juin 2004 à 14:50
8 juin 2004 à 13:22
7 juin 2004 à 10:28
$sql_query = "SELECT * FROM connectes where ip='$ip'";
la sa recherche l'ip pour stoker si oui ou non les pseudo est dans la table...ce ke je voudrais sa ke sa rechecrhe le pseudo et non l'ip!lol
7 juin 2004 à 10:24
// fonction a appeler au début de vos pages
function connectes($pseudo)
{
$temps = 5;
if(mysql_connect(BDD_HOST, BDD_PSEUDO, BDD_PASS))
mysql_select_db(BDD_BDD);
else
return;
// ip du client
$ip = $_SERVER['REMOTE_ADDR'];
// pseudo
$pseudo = empty($pseudo) ? '' : $pseudo;
// 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
{
$sql_query = "UPDATE connectes SET derniere='$time', pseudo='$pseudo' WHERE ip='$ip'";
$result = mysql_query($sql_query);
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();
}
Et apelle la fonction avec: connectes($pseudo); $pseudo valant '' si le gars ets pas connecte!
@++
R@f
7 juin 2004 à 10:19
7 juin 2004 à 10:15
L'ip est utile pour reprérer les visiteurs non enregistrés ainsi que ceux qui changent de pseudo en cours de route...
Ta variable pseudo est de quel type? Variable de session?
@++
R@f
6 juin 2004 à 23:24
6 juin 2004 à 21:53
Ben je sais pas trop, car j'ai fais un copié coller du script ci-dessus et ca marche...
Si tu veux, contact moi par MP pour qu'on voie.
@++
R@f
6 juin 2004 à 21:44
6 juin 2004 à 18:32
Je viens de faire un test, concluant, avec et sans valeur à $_SESSION['nom']...
Voici la version avec, oublie pas les infos de connection mysql
Et il m'affichait bien:
Connectés:
raf
Visiteurs:
0
@++
R@f
6 juin 2004 à 17:57
6 juin 2004 à 16:54
J'ai pas trop compeis, c'est quoi le problème?
@++
R@f
6 juin 2004 à 16:31