BEAUBRIUS
Messages postés120Date d'inscriptionlundi 19 mai 2003StatutMembreDernière intervention 8 février 2008
-
24 mars 2006 à 15:09
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 2007
-
26 mars 2006 à 11:01
Bonjour
Je ne sais pas trop si je doit le metre dans sql ou dans php donc je le met ici, mais desole si je me suis trompe d'endroit.
J'ai dans ma varaible $connexion la connexion a ma basse de donnée
J'ai un tableau de ma bdd qui contien des ips et des dates.
Grace a phpmyadmin j'ai crée une requet qui me compte le nombre d'ip different par jour :
-"SELECT COUNT(DISTINCT ip )FROM `sfywb_visite` group by date"
cette requet me donne un tableau avec 1 seul colone et x ligne avec x le nombre de date differente, et sur ces lignes il y a le nombre d'ip different a cette date.
J'ai realiser cette requet en php de la fason suivante :
$a=mysql_query("SELECT COUNT(DISTINCT ip )FROM `sfywb_visite` where user='$login' group by date",$connexion);
Mais maintenant je cherche a lire les x ligne du tableau. J'ai penser a faire un mysql_result mais :
lorsque je fait $nbr=mysql_result($a,"somme");
$nbr a la valeur que de la premier ligne du tableau
et lorsque je fait $nbr=mysql_result($a,"1","somme");
j'ai une erreur ...
Je n'arrive pas a trouve de solution donc si quelqun peu m'eclairé ?
BEAUBRIUS
Messages postés120Date d'inscriptionlundi 19 mai 2003StatutMembreDernière intervention 8 février 2008 24 mars 2006 à 15:23
En cherchant encore j'ai finalement trouvé ma solution
$a=mysql_query("SELECT COUNT(DISTINCT ip )FROM `sfywb_visite` where user='$login' group by date",$connexion);
$nbr='0';
while ($donnees = mysql_fetch_array($a) )
{
$nbr= ($nbr+$donnees[0]);
}
Si quelqun a une meilleur solution , je suis preneur
Tarvos
Messages postés40Date d'inscriptionvendredi 11 mars 2005StatutMembreDernière intervention24 mars 2006 24 mars 2006 à 15:27
$res = mysql_query("SELECT ip,date FROM `sfywb_visite` where user='$login'",$connexion);
while ($row mysql_fetch_array($res)) $ips[$row['date']][] $row['ip'];
BEAUBRIUS
Messages postés120Date d'inscriptionlundi 19 mai 2003StatutMembreDernière intervention 8 février 2008 24 mars 2006 à 15:32
Salut Malalam
Non tu n'as pas trés bien compris
En gros ça va me permetre de faire un compteur de visite avec 1 ip par jour.
Si je vais ta methode la personne qui a un ip fixe qui vien un jour
puis le lendemain comptera que comme 1 visite, alors que par ma methode
elle comptera comme 2 ce qui est normal vu quel a visiter le site 2
fois ...
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 26 mars 2006 à 11:01
Salut,
avec un REPLACE INTO ça aurait marché sans faire de COUNT DISTINCT, tu fais deux champs avec une clé (ip,date) unique et tu fais un replace INTO, si le mec a un couple ip/date identique ça sera remplacé, dans le cas contraire ça sera une ligne en plus dans ta table, le tout en une seule requête sans fetch...