|
[ Autoren gesucht! ]
|
PHP-Homepage.de sucht laufend Autoren für News und Artikel
Interesse?
|
|
 |
|
[Start] [Suche] [Neue Einträge]
| ' PHPCOUNT ' von Dosul | <?
/*************************************************************
PHPCOUNT is written by Detlef Tiggeler 2001-06-17
PHPCOUNT ist ein MySql basierender Counter.
Features: Protokollierung der angefragten Seiten >
Anzeige der Visits >
Anzeige der Pageviews >
Anzeige der Top 10 Documents >
Homepage: http://www.solutions-for-the.net
Email : dosul@ich-glaubs-ja.net
Dieses script darf frei verwendet werden.
Dieser Hinweis darf nicht entfernt werden *grins*
Erweiterung vorgesehen bis 2001-08-01
> referer
> user online
> verweildauer
Fragen bitte an obige Mail-Adresse
Gruss
Dosul
/**************************************************************/
// Zuerst die Verbindung zur Datenbank sofern nicht schon vorhanden
// Bei verwendung meiner Klasse mysql.php3
include("Pfad zur Datei"); Hier den Pfad eintragen wo mysql.php3 abgelegt ist.
$db = new MySql;
$db->init();
// Falls nicht, dann verbindung folgendermassen herstellen :
$conn = mysql_pconnect($server,$user,$password) or die( "Couldn't connect to MySQL server!");
// unzutreffendes bitte löschen
/****************************************************
Dies ist der SQL Befehl zum erzeugen des Datenbank Tables sites.
CREATE TABLE sites (
id int(11) DEFAULT '0' NOT NULL auto_increment,
uri varchar(100) NOT NULL,
count int(11) DEFAULT '0' NOT NULL,
PRIMARY KEY (id)
);
/*********************************************************/
/********************************************************************************/
// ANFANG INDIZIERER
// Diesen Code in jede zu indizierende Seite eintragen
// die Ihr erfassen und auswerten wollt !
$basepath="http://www."; // hier die URL eintragen z.B. http://www.solutions-for-the.net
// bitte keinen abschliessenden slash eintragen
$site = "$basepath$REQUEST_URI";
$res1= mysql_query("select * from sites where uri='$site'");
$data1= mysql_fetch_object($res1);
if($data1->uri == $site) {
mysql_query("update sites set count=$data1->count + 1 where uri = '$site'");
}else{
mysql_query("insert into sites(uri,count) values('$site',1)");
}
// Ende des indizierers
/*********************************************************************************/
// Jetzt kommt der Anzeigeteil
/*********************************************************************************/
// erzeugen eines html documents mit den entsprechenden tables
// das könnt Ihr natürlich gestalten wie Ihr wollt :-)
// Dieser Teil kann an jeder beliebigen Stelle auf eurer Page aufgerufen werden.
// darauf achten das die Datenbankverbindung hergestellt ist :))
echo "<html>\n";
echo "<head>\n";
echo "<title>Top 10 counter</title>\n";
echo "</head>";
echo "<body bgcolor=\"#CCCCCC\" text=\"#000000\"\n>";
$basepath="http://www."; // falls noch nicht vorhanden bitte auch hier die URL eintragen
// ansonsten ausdokumetieren oder löschen.
$res= mysql_query("select SUM(count) as total from sites");
$data = mysql_fetch_object($res);
$clicks = $data->total;
$result = mysql_query("select count as visit from sites where uri='$basepath/'");
$data2 = mysql_fetch_object($result);
$visits = $data2->visit;
$pages=$clicks - $visits;
// echo "Besucher=$visits<br>";
// echo"Pageviews=$pages<br>";
$res3 = mysql_query("select * from sites order by count desc");
echo"<table width=\"70%\" border =\"1\" align=\"center\">\n";
echo"<tr><td align=\"center\"><h3>Top 10 Sites bei $basepath</h3></td></tr>\n";
while ($data3 = mysql_fetch_object($res3)) {
echo"<tr><td>$data3->uri</td><td>Besuche bisher</td><td>$data3->count</td></tr>\n";
}
echo"</table>\n";
echo"<table width=\"70%\" border =\"1\" align=\"center\">\n";
echo "<tr><td>Besucher bisher:</td><td align=\"center\">$visits</td><td>Pageviews bisher :</td><td align=\"center\">$pages</td></tr></table>\n";
echo "</body>\n";
echo "</html>";
// Ende des Anzeigeteils
/******************************************************************
Wenn Ihr PHPCOUNT nur zum anzeigen der Besucher einsetzen wollt
Dann folgendermassen:
!! Nicht vergessen den INDIZIERER weiter oben mit einzubauen !!
/******************************************************************/
$res= mysql_query("select SUM(count) as total from sites");
$data = mysql_fetch_object($res);
$clicks = $data->total;
echo "Besucher bisher :$visits";
/********************************************************/
// Demoversion auf meiner Homepage
?> |
|