Logo - MyWebsolution.de
User gesamt  :  2389810
User online  :  2
KubaSeoTräume, PHP Forum, PHP Community and more ... MyWebsolution.de!
   
   
 
Registrieren Login User F.A.Q Suche Home

eingeloggt bleiben

MyWebsolution.de Foren » PHP und MYSQL » Counter Tutorial

Seite: 1 Posts pro Seite: 5 10 20
Autor Thread
19.04.2008 23:53 Uhr Counter Tutorial
TEST
Forenposter
 
registriert 16.04.2008
wohnt in Deutschland
Beiträge 81
hi,
wer einen Counter haben möchte wie auf
meiner Seite(alt)
findet hier ein kleines tutorial.
1.connect.inc.php
PHP:
<?php
$dbHost
='localhost'
$dbUser='matze93';
$dbPass='Matthias'
$dbName='matze93';

$connect=@mysql_connect($dbHost$dbUser$dbPass) or die("Konnte keine Verbindung zum Datenbankserver aufbauen!");
$selectDB=@mysql_select_db($dbName$connect) or die("Konnte die Datenbank <b>$dbName</b> nicht auswählen!");
?>


MY-SQL Daten schreiben

2.counter.inc.php
PHP:
<?php

 $user_time
=1
 
$online_time=1

 require(
'connect.inc.php');


 
$time=date('U')-($user_time*999999);
 
mysql_query("DELETE FROM pcounter_user WHERE time<$time");

 
$day=date('j');
 
$query=mysql_query("SELECT value FROM pcounter_save WHERE name='day_now'");
 
$row=mysql_fetch_array($query);
 if (
$row['value']!=$day) {
   
$query1=mysql_query("SELECT value FROM pcounter_save WHERE name='today'");
   
$row1=mysql_fetch_array($query1);
   
mysql_query("UPDATE pcounter_save SET value=".$row1['value']." WHERE name='yesterday'");
   
mysql_query("UPDATE pcounter_save SET value=0 WHERE name='today'");
   
mysql_query("UPDATE pcounter_save SET value=$day WHERE name='day_now'");
  }

  
 
$intable=false;
 
$query=mysql_query("SELECT time FROM pcounter_user WHERE ip='$REMOTE_ADDR'");
 if (
mysql_num_rows($query)==0) {
  
$intable=false;
 } else {

  
mysql_query("UPDATE pcounter_user SET time=".date('U')." WHERE ip='$REMOTE_ADDR'");
 }

 if (!
$intable) {
  
mysql_query("INSERT INTO pcounter_user (ip,time) VALUES ('$REMOTE_ADDR','".date('U')."')");

  
$query=mysql_query("SELECT value FROM pcounter_save WHERE name='counter'");
  
$row=mysql_fetch_array($query);
  
$row['value']++;
  
mysql_query("UPDATE pcounter_save SET value=".$row['value']." WHERE name='counter'");

  
$query=mysql_query("SELECT value FROM pcounter_save WHERE name='today'");
  
$row=mysql_fetch_array($query);
  
$row['value']++;
  
mysql_query("UPDATE pcounter_save SET value=".$row['value']." WHERE name='today'");
 }
 
$query=mysql_query("SELECT value FROM pcounter_save WHERE name='counter'");
 
$row=mysql_fetch_array($query);
 
$pcounter['counter']=$row['value'];
 
$query=mysql_query("SELECT value FROM pcounter_save WHERE name='today'");
 
$row=mysql_fetch_array($query);
 
$pcounter['today']=$row['value'];
 
$query=mysql_query("SELECT value FROM pcounter_save WHERE name='yesterday'");
 
$row=mysql_fetch_array($query);
 
$pcounter['yesterday']=$row['value'];
 

 
$time=date('U')-($online_time*999999);
 
mysql_query("DELETE FROM pcounter_online WHERE time<$time");


 
$intable=true;
 
$query=mysql_query("SELECT time FROM pcounter_online WHERE ip='$REMOTE_ADDR'");
 if (
mysql_num_rows($query)==0) {
  
$intable=false;
 } else {

  
mysql_query("UPDATE pcounter_online SET time=".date('U')." WHERE ip='$REMOTE_ADDR'");
 }

 if (!
$intable) {
  
mysql_query("INSERT INTO pcounter_online (ip,time) VALUES ('$REMOTE_ADDR','".date('U')."')");
 }
 
$query=mysql_query("SELECT * FROM pcounter_online");
 
$pcounter['online']=mysql_num_rows($query);
?>

einfach noch folgende Daten nach belieben editieren:
2.1Für User bzw. Online Zeit
PHP:
 $user_time=1; 
 $online_time=1; 


2.2Für Zeit, wenn es aus der Datenbank gelöschtwerden soll
PHP:
$time=date('U')-($user_time*999999);


3.counter.php
PHP:
<?php include('counter.inc.php'); ?>
Gesamt: 
<?=$pcounter['counter']?>
<br />
Online: 
<?=$pcounter['online']?>
<br />
Gestern:
<?=$pcounter['yesterday']?>
<br />
Heute:
<?=$pcounter['today']?>

Hier kann man die Reihenfolge einfach tauschen.

4.SQL-Daten
4.1 pcounter_online:
feld1 ip varchar50 latin1_swedish_ci Not Null default0
feld2 time int12

4.2pcounter_save:
feld1 name varchar50 latin1_swedish_ci Not Null default0
feld2 value varchar50 latin1_swedish_ci Not Null default0

4.3pcounter_user
feld1 ip varchar50 latin1_swedish_ci Not Null default0
feld2 time int12

P.S. Darf geändert werden

Dieser Beitrag wurde am 18.01.2009 um 10:04:11 Uhr von matze93 zum 1. Mal editiert.
Profil ansehen
Seite: 1 no reply
Powered by Pascal Landau © 2006 MyWebsolution.de
Designed by Pascal Landau © 2006 MyWebsolution.de
 
 
 
 
Home Email Impressum Disclaimer Statistik