Counter für heutige Besucher

g-zus

Erfahrenes Mitglied
so, wieder mal ein Counter Leude,

ich will ganz einfach nur die Besucher zäjlen, die zwischen 00:01Uhr und 00:00 auf meiner Seite gewesen sind und das anzeigen lassen.

Von mir aus kann das in TXT oder MySQL-Tabelle gespeichert werden.
Das is mir egal.

Leider fehlt mir der geistesblitz, wie ich das realisiere, dass sich das auf eben die 24 stunden beschränkt, genauergesagt von 00:01 Uhr bis 00:00Uhr.
hier is bei mir leider das php-wissen zu ende gewesen oder besser gesagt:

hier herrscht anscheinend eine große wissenslücke! :)

fertige freescripts habe ich leider nur sehr komplizierte gefunden, bei denen ich leider den benötigten teil nicht rausschreiben konnte.

ich hoffe oihr könnt mir weiterhelfen.

THX schon mal leude.......

P.S.: Sry, dass es wieder ein Counter sein muss, aber Suchfunktion ergab nur Links auf bereits existierende Freescripts (wie oben beschrieben! ;) )
 
Hmn,das dürfte doch nicht so schwer sein.
Einfach eine existierenden Counter nehmen und als zusätzliche Bedingung beim Hochzählen das Datum abfragen.
 
wie gesagt, hab keine ahnung wie ich das mit dem zeitbereich hinkriege.

naja, ich schau mir einfach nochmal ein bereits existierendes Script genauer an.
 
Hi,

Danke für den Link, aber ich hab mich einfach mal rangesetzt und überlegt was der Counter eigentlich machen muss und hab dann ein zwar bissel kompliziertes aber funktionierendes Script programmiert.

Trotzdem danke.


Falls die Frage trotzdem mal wieder erscheinen sollte oder jemand wissen will wie ich das gelöst habe, hier mein Code:

PHP:
<?php


############################
############################
##                        ##
##Dieses Script stammt von##
##  Schmalhofer Jonathan  ##
##  Bitte entfernt diesen ##
##    Vermerk hier nicht  ##
##                        ##
##         (c)2002        ##
##                        ##
############################
############################


// Adresse des Servers mit Port
$servername = "localhost";

// Benutzername für die Datenbank
$dbusername = "username";

// Passwort für die Datenbank
$dbpassword = "passwort";

// Name der datenbank
$dbname = "dbname";

// Name, wie die Tabelle bezeichnet werden soll
$tablename_counter = "counter_heute";

//Hier wird das aktuelle datum festgelegt
//und in der Variable "akt_datum" abgelegt

$date = time();

$akt_datum = date("dmY");

//eine Verbindung zum MySQL-Server wird hergestellt
//und die Daten werden aus der Tabelle ausgelesen

@mysql_connect ("$servername", "$dbusername", "$dbpassword") OR die ("Verbindung zum MySQL-Server fehlgeschlagen");
mysql_select_db ("$dbname") OR die("Verbindung zur Datenbank fehlgeschlagen");

$result = mysql_query("SELECT * FROM $tablename_counter");

$row = mysql_fetch_array($result);
$besucher = $row[besucher];
$datum = $row[datum];




if($besucher!=""){

//falls das Feld "Besucher" nicht leer sein sollte

   if($akt_datum!=$datum){

   //falls der Aufruf an einem neuen Tag geschah
   //Aktualisieren des Datums auf den aktuellen Tag
   //Zurücksetzen der Besucheranzahl auf "1"

   $besucher = "1";


     if (mysql_query ("UPDATE $tablename_counter SET besucher='$besucher', datum='$akt_datum' WHERE datum='$datum'"))   
     {   

     }else {  

       echo "<font size=\"1\" face=\"Arial\">Ein <b>Fehler</b> ist aufgetreten:<br><br>\n\n";
       echo mysql_error();
       echo "<br></font>";

     }


   }else{

   //falls der Aufruf am selben Tag geschah
   //Erhöhung der Besucherzahl um "1"
   //Aktualisierung der Besucherzahl

     $besucher++;

     if (mysql_query ("UPDATE $tablename_counter SET besucher='$besucher' WHERE datum='$datum'"))   
     {   

     }else {  

       echo "<font size=\"1\" face=\"Arial\">Ein <b>Fehler</b> ist aufgetreten:<br><br>\n\n";
       echo mysql_error();
       echo "<br></font>";

     }

   }

}else{

//falls das Feld "Besucher" leer ist
//wird die Besucheranzahl auf "1" gesetzt
//und das Datum auf den aktuellen Tag

   $besucher = "1";   

   if (mysql_query ("INSERT INTO $tablename_counter (id, besucher, datum) values (NULL, '$besucher', '$akt_datum') WHERE id='1'"))   
   {   


   }else {  

     echo "<font size=\"1\" face=\"Arial\">Ein <b>Fehler</b> ist aufgetreten:<br><br>\n\n";
     echo mysql_error();
     echo "<br></font>";

   }

}

@mysql_close();

echo "<font size=\"1\" face=\"Arial\">$besucher Besucher heute.</font>";

?>


Die Tabelle kann mit folgendem Code erstellt werden:

PHP:
#
# Tabellenstruktur für Tabelle `counter_heute`
#

CREATE TABLE counter_heute (
  id int(4) NOT NULL auto_increment,
  besucher varchar(5) default NULL,
  datum varchar(10) default NULL,
  PRIMARY KEY  (id)
) TYPE=MyISAM;

#
# Daten für Tabelle `counter_heute`
#

INSERT INTO counter_heute VALUES (1, '1', '01011111');
 
Zurück