Counter in Webseite einbinden... geschlossen 

Status
Für weitere Antworten geschlossen.

IM99

Registered +
Registriert
Jan. 2009
Beiträge
45
Hallo, liebe Gemeinde

Habe mal ein Problem'chen mit meiner neu erstellten Webseite
( IM99 ® 1999-2009 )
Dort möchte ich gerne ein Counter einbinden. Leider zählt er wohl offenbar nur bis 1. Habe bestimmt irgendwo ein Fehler gemacht, weiß aber nicht mehr weiter. Wenn ich die Statistikdateien lösche, werden neue angelegt. Das ist ja richtig so. Beginnt dann auch mit 1 zu zählen. Wenn aber jemand anders auf die Homepage geht, bleibt er immer noch auf 1 stehen. Leider bin ich noch neu in der Materie, und weiß nicht mehr weiter. Der Counter hat auch eine IP-Sperre, damit der Zähler nicht grundlos nach oben getrieben wird. Hier mal der Code:​

PHP:
$CookieTimeOut = "200"; // Cookie Timeout in Sekunden
$Num_Save_IP = "10"; // IP Adressen die gespeichert werden sollen
$IPFile = "IPs.dat"; // Datei in der die IPs gespeichert werden sollen
$LogFile = "Stat.dat"; // Datei in der die Counterdaten gespeichert werden.
$DispLen = 6; // Mindestanzahl der Counterstellen
$BackCol = "#000000"; //Hintergrundfarbe des Counters
$Border = 1; // Rahmenbreite des Counters 
$imgHeight = 20; // Höhe des Ziffern Bildes
$imgWidth = 15; // Breite des Ziffern Bildes

//Bilder für die Ziffern 0-9
$img[0]="ani0.gif";
$img[1]="ani1.gif";
$img[2]="ani2.gif";
$img[3]="ani3.gif";
$img[4]="ani4.gif";
$img[5]="ani5.gif";
$img[6]="ani6.gif";
$img[7]="ani7.gif";
$img[8]="ani8.gif";
$img[9]="ani9.gif";

//*************
//* Quelltext *
//*************

$CurrentIP=$REMOTE_ADDR;
if(file_exists($IPFile))
{ 
$IPF=fopen($IPFile,"r+");
$IPData=fgets($IPF,2000);
$IPArray=explode("#",$IPData);
if(in_array($CurrentIP,$IPArray))
{ 
$Action="read";
}
else
{
$SavedIPs=count($IPArray);
if($SavedIPs { 
fputs($IPF,$CurrentIP."#");
fclose($IPF);
$Action="update"; 
}
else
{
$arrayp=array_pop($IPArray);
$IPArray=array_reverse($IPArray);
array_push($IPArray,$CurrentIP);
$IPArray=array_reverse($IPArray);
$AddIP=implode("#",$CurrentIP); 
$IPF=fopen($IPFile,"w+");
fputs($IPF,$CurrentIP);
fclose($IPF);
$Action="update";
}
} 
}
else 
{ 
$Counter=fopen($LogFile,"w+");
fputs($Counter,1);
fclose($Counter);
$IPF=fopen($IPFile,"w^");
fputs($IPF,$CurrentIP."#");
$CurrentCount=1;
}


if($Action=="update")
{
$Counter=fopen($LogFile,"r+");
$CurrentCount=fgets($Counter,20);
$CurrentCount++;
fseek($Counter,0);
fputs($Counter,$CurrentCount);
fclose($Counter); 
}

if($Action=="read")
{
$Counter=fopen($LogFile,"r+");
$CurrentCount=fgets($Counter,20);
fclose($Counter); 
}

echo "
[TABLE]
[TR]
";
if ($DispLen > strlen($CurrentCount))
{
$dsize=$DispLen-strlen($CurrentCount);
for ($i=0; $i < $dsize; $i++)
{
$CurrentCount="0".$CurrentCount;
}
}

for ($i=0; $i < strlen($CurrentCount); $i++)
{
echo "[td][IMG]https://finale.freesoft-board.to/".$img[substr($CurrentCount, $i, 1)]."[/IMG][/td]";
}
echo "
[/TR]
[/TABLE]
[TR]
";

?>

Eingebunden habe ich es auf meiner Homepage als HTML-Code:​


Ich hoffe, hier kann mir jemand helfen, der sich gut mit der Materie auskennt...

Für die Bemühungen bedanke ich mich schon jetzt dafür....

MfG IM99​
[/TR]
 
Zuletzt bearbeitet von einem Moderator:
Hi,
gibt es denn die bestimmten Dateien überhaupt und haben sie die Rechte (CHMOD) 777?
Desweiteren änder mal
Code:
$CurrentIP=$REMOTE_ADDR;
zu
Code:
$CurrentIP=$_SERVER['REMOTE_ADDR'];
Für den Fall, dass dein Server $REMOTE_ADDR nicht unterstützt.

Gruß
Broken Sword
 
Hallo....

Danke für den Hinweis....
Die Dateien gibt es, und die haben die Rechte (CHMOD)777.
Aber dein 2. Hinweis war bestimmt nicht schlecht... Auf einmal hatte ich eine 2 zu stehen...
Habe alles nochmal auf 0 gesetzt. Mal sehen, wenn jemand drauf war, ob der Zähler jetzt steigt...
Wenn das jetzt so klappt, dann bekommst du ein dickes Lob von mir...;)

Mal sehen....

MfG IM99
 
Übrigens noch als Erklärung, auf Servern mit höheren Sicherheitseinstellungen in PHP funktioniert nur die Variable zweiter Schreibweise ;)
 
Hallo...

Habe es nun getestet. Der Zähler funktioniert jetzt. SUPER....
Ich danke "Broken Sword" für seine nette Hilfe...
Wie schonmal, hier bei "Freesoft-Board" wird man geholfen...
So soll es auch sein.... ;)

Somit mache ich hier dann auch dicht.....

...::: DANKE :::...

​
 
Status
Für weitere Antworten geschlossen.

Ähnliche Themen

Zurück
Oben Unten