IPB

Willkommen, Gast ( Anmelden | Registrierung )

> Download Counter, ein php Script?
Conny
Beitrag 22.07.2005 - 10:38
Beitrag #1


Kommt Zeit, kommt Rat, kommt Conrad!
Gruppensymbol

Gruppe: Mods
Beiträge: 1.169
Mitglied seit: 21.11.2001
Wohnort: Altenkirchen, Westerwald
Mitglieds-Nr.: 42



Hallo,
immer wieder tauchen sie auf, auch bei uns hier im Forum,
DOWNLOAD COUNTER

Ich gehe mal davon aus. daß es ein PHP-Script ist.
Ich hätte aber gerne gewußt wie es geht!
Wird ein Logfile angelegt in der gezählt wird?
Wie wird der Download gezählt und sicher gestellt, daß es auch wirklich heruntergeladen und nicht abgebrochen wurde?

Beispielcode vielleicht?

Danke schon mal!

cu
Conny
Go to the top of the page
 
+Quote Post
 
Start new topic
Antworten
Andreas
Beitrag 22.07.2005 - 12:47
Beitrag #2


____________________
Gruppensymbol

Gruppe: Admin
Beiträge: 1.220
Mitglied seit: 20.10.2001
Mitglieds-Nr.: 3



Ja, ist nur ein PHP-Script. Das Beispiel zählt zwar "nur" Links, aber ein Download ist ja auch ein Link. Kopf- und Fuss.html sind nur normale HTML Dateien, die den Rahmen der Seite bilden. Ansonsten hast Du schon Recht. Es wird nur eine Textdatei angelegt mit dem Link und dem Counter. Mehr ist das nicht.

QUELLTEXT
<?
//
// count - Hauptscript
// Version 1.0 vom 26.09.2002 - Autor: Andreas Edler (andreas@filmfacts.de)
//

include("vars.php");
$pwd = "";

// Einlesen des Linkkürzels (falls vorhanden!),
// Zähler erhöhen und weiterleiten

if (isset($HTTP_GET_VARS['name'])){
   $name = $HTTP_GET_VARS['name'];
   $countdatei=$name.".txt";

   // Schreiben der neuen Daten
     $fp = fopen("$countdatei","r");
     flock($fp,2);

     while($zeile = fgetcsv($fp,500)){
       $url=$zeile[0];
       $stand=$zeile[1];
     }
     flock($fp,3);
     fclose($fp);

     $fp = fopen("$countdatei","w");
     flock($fp,2);

     $stand++;
     $schreiben=$url.','.$stand;
     fputs($fp,$schreiben);

     flock($fp,3);
     fclose($fp);

     Header("Location: ".$url);
     exit();
}

// Einlesen der neuen Daten (falls vorhanden!)
// und auf Vollständigkeit prüfen ...
if (isset($HTTP_POST_VARS['nameneu'])){
   $nameneu = $HTTP_POST_VARS['nameneu'];
   $urlneu = $HTTP_POST_VARS['urlneu'];
   $standneu = $HTTP_POST_VARS['standneu'];
   $pwd = $HTTP_POST_VARS['pwd'];
   $countdatei=$nameneu.".txt";

   // Schreiben der neuen Daten falls
   // das Passwort OK ist
   if ($pwd == $passwort){
     $fp = fopen("$countdatei","w");
     flock($fp,2);

     $schreiben=$urlneu.','.$standneu;
     fputs($fp,$schreiben);

     flock($fp,3);
     fclose($fp);
     }

   Header("Location:".$basispfad);
   exit();
}


// Einlesen der Löschdaten (falls vorhanden!)
if (isset($HTTP_POST_VARS['loeschen'])){
   $loeschen = $HTTP_POST_VARS['loeschen'];
   $pwd = $HTTP_POST_VARS['pwd'];
   include($kopf);
   echo '<h3>&quot;Linkcounter&quot; Statistik für '.$adminname.'</h3>'."\n";

   if ($pwd != $passwort){
     echo '<p><b>'.$loeschen.'</b> wirklich löschen? Dann geben Sie bitte Ihr Passwort ein und bestätigen Sie!</p>';
     echo '<form action="index.php" method="post">';
     echo '<input type="Password" name="pwd" value="" size="10">';
     echo '<input type="hidden" name="loeschen" value="'.$loeschen.'">';
     echo '<input type="Submit" name="submit" value="Löschen!">';
     echo '</form>';
     }

   // Löschen der Counterdatei
   // falls das Passwort OK ist
   if ($pwd == $passwort){

     if(@unlink($loeschen)){
       echo "Die Datei <b>".$loeschen."</b> wurde gelöscht!";
       }else{
       echo "Konnte die Datei <b>".$loeschen."</b> nicht löschen!";
       }

     echo '<h4 align="center"><a href="'.$basispfad.'">Zurück</a></h4>';
     }

   include($fuss);
}


if (!isset($HTTP_GET_VARS['name'])){
 if (!isset($HTTP_POST_VARS['loeschen'])){
   include($kopf);

   echo '<h3>&quot;Linkcounter&quot; Statistik für '.$adminname.'</h3>'."\n";

   $url = $HTTP_GET_VARS['urlneu'];
   $name = $HTTP_GET_VARS['nameneu'];
   $stand = $HTTP_GET_VARS['standneu'];

   // Ausgabe des Formulars
   echo '<form action="index.php" method="post">'."\n";
   echo '<table align="center">'."\n";
   echo '<tr><td valign="top" align="right">neue URL:</td><td align="left"><input type="Text" name="urlneu" value="'.$url.'" size="40"></td><td valign="top" align="right">Stand:</td><td><input type="Text" name="standneu" value="'.$stand.'" size="10" maxlength=""></td></tr>'."\n";
   echo '<tr><td valign="top" align="right">Kürzel:</td><td align="left"><input type="Text" name="nameneu" value="'.$name.'" size="40"></td><td valign="top" align="right">Passwort:</td><td align="left"><input type="Password" name="pwd" value="" size="10"></td></tr>'."\n";
   echo '<tr><td valign="top" align="center" colspan="5"><input type="Submit" name="eintragen" value="eintragen"></td></tr>'."\n";
   echo '</table>'."\n";
   echo '</form>'."\n";


   // Einlesen des Verzeichnisses und Verwerfen
   // der nicht passenden Dateien
   $verz=opendir ('.');
   $x=0;
   while ($file = readdir($verz)){
     if($file != "." && $file != ".." && substr($file, -4) == ".txt"){
        $speicher[$x] = $file;
        $x++;
        }
     }
   closedir($verz);

   // Ausgabe der angelegten Counter mit den Counterständen
   // in einer Tabelle
   echo'<form action="index.php" method="post">'."\n";

   echo '<table cellspacing="1" cellpadding="0" width="100%">'."\n";
   echo '<tr><th valign="top">URL</th><th valign="top">Zähler</th><th valign="top">Datei</th><th><input type="Submit" name="x" value="x"></th></tr>'."\n";
   $x=0;
   asort($speicher);
   while ($speicher[$x]){
     $fp = fopen("$speicher[$x]","r");
     flock($fp,2);

     while($zeile = fgetcsv($fp,500)){
       $url=$zeile[0];
       $stand=$zeile[1];
     }

     echo '<tr><td valign="top"><a href="'.$url.'" target="_top">'.$url.'</a></td><td valign="top" align="right">'.$stand.'</td><td valign="top" align="right"><a href="index.php?nameneu='.substr($speicher[$x],0,strlen($speicher[$x])-4).'&urlneu='.$url.'&standneu='.$stand.'">'.$speicher[$x].'</a></td><td valign="middle"><input type="Radio" name="loeschen" value="'.$speicher[$x].'"></td></tr>'."\n";
     flock($fp,3);
     fclose($fp);


     $x++;
   }
   echo "</table>\n";
   echo "</form>\n";

   include($fuss);
 }
}
?>


vars.php
QUELLTEXT
<?
// Version 1.0 vom 26.09.2002 - Autor: Andreas Edler (andreas@filmfacts.de)
//
// Hier werden grundsätzliche Variablen abgelegt,
// die das Aussehen beinflussen!
// Die Variablennamen sollten selbsterklärend sein.


$basispfad = "http://www.andreas-edler.de/blafasel/index.php";
$kopf = "kopf.html";
$fuss = "fuss.html";
$passwort = "...";
$adminmail = "...";
$adminname = "...";
$mailsubject = "...";

?>


Hab' ich jetzt nur schnell per WebFTP kopiert. Ich benutze das nicht mehr aktiv ... aber es lief immer.

Grüße

Andreas
Go to the top of the page
 
+Quote Post

Beiträge in diesem Thema


Reply to this topicStart new topic
1 Besucher lesen dieses Thema (Gäste: 1 | Anonyme Besucher: 0)
0 Mitglieder:

 



RSS Vereinfachte Darstellung Aktuelles Datum: 07.07.2025 - 21:53

taschenkalender
expertise-panel IPS Driver Error

IPS Driver Error

There appears to be an error with the database.
You can try to refresh the page by clicking here