Avatar billede crabber Nybegynder
22. august 2007 - 10:23 Der er 4 kommentarer

Hvordan skal jeg udskrive det?

Jeg har fundet en counter på nettet som tælle antal besøgende om dagen og tager højde for at den samme ip ikke bliver talt mere end engang.

Nu skal jeg så udskrive antal besøgende der har været for hverdag, men jeg ved ikke lige hvordan.

Tabellen se så ledes ud.
ID(int)
Dato(date)
Time(datetime)
Ip(varchar20)

Det som jeg gerne vil have er at den udskiver Dato og antal besøgemde den dag. Jeg har prøve at lave en while lække, men da der er flere besøgende på en dag har de jo samme dato så derfor udskrive den jo en datoen og skrive 1 besøgende flere gange. selv om det er samme dag. Og det skal den jo ikke.

Casper
Avatar billede showsource Seniormester
22. august 2007 - 10:46 #1
Det er jo egentlig et Mysql spm.

SELECT COUNT(*) FROM tabel WHERE Dato = DATE(NOW()) GROUP BY ip
Avatar billede crabber Nybegynder
22. august 2007 - 10:56 #2
ja måske.. men jeg ved ikke helt hvordan jeg skal sætte det op.

Det er den måde jeg har prøvet på:::::::::::::::::::::::::::::::::::::::::::::::::::
//Udskrive antal besøgnede
$query = mysql_query("SELECT date, time FROM counter ORDER BY date");
while($row = mysql_fetch_assoc($query))
{
    echo $row['date'] . '<br />';
    /* Vi tæller antallet af brugere/rækker i tabellen */
    $besoeg_ialt = mysql_query("SELECT COUNT(*) AS antal FROM counter WHERE time = '$row[time]'");
    /* Vi udskriver det fundne antal brugere/rækker i en echo */
    echo "Der har været ".mysql_result($besoeg_ialt,0)." besøg" . '<br /><br />';
}
SLUT KODE:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Avatar billede showsource Seniormester
22. august 2007 - 11:10 #3
ehh, min kode tæller kun for i dag, og skal bruge CURDATE() i stedet for DATE(NOW())

Det du ville, var jo at lave en liste over hits  for hver dag?
Avatar billede showsource Seniormester
22. august 2007 - 11:41 #4
hmm, jeg er desværre ikke særlig god til JOIN m.m. men flg. vil vise de enkelte datoer med antal hits fra forskellige ip adresser.
Vil mene det skulle kunne laves med en query, men kan ikke lige greje den:

$dage = mysql_query("SELECT DISTINCT(dato) as ref FROM counter ORDER BY dato") or die (mysql_error());

while($vis = mysql_fetch_assoc($dage)) {

echo $vis["ref"] .", hits= ";

    $hits = mysql_query("SELECT COUNT(*) FROM counter WHERE dato = '". $vis["ref"] ."' GROUP BY ip") or die (mysql_error());
    echo mysql_result($hits, 0) ."<br>";

    mysql_free_result($hits);
}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester