Download-Zähler
Programm zur Anzeige von Download-Verlauf
= PHP-Code herunterladen und installieren =
Dies ist eine Einführung in ein Programm, mit dem Sie die Anzahl der Downloads ermitteln können, wenn ein Webseitenbenutzer ein Programm herunterlädt und verwendet. Es ist möglich, einen Download-Zähler auf der Seite einzurichten, und Site-Administratoren können den Download-Verlauf auch einfach im Browser überprüfen.
Hinweis: Wenn eine Seite mit einem Download-Link eine Meldung zur Speicherung der Datei anzeigt und dann geschlossen wird, ohne den Download zu starten, wird es dennoch als Download gezählt. Dies liegt daran, dass die Anzahl der Klicks auf den Link gezählt wird.
Laden Sie von dieser Seite die komprimierte "zip"-Datei des Programms herunter und installieren Sie es auf Ihrer eigenen Webseite. Die Datei heißt "count.php", aber Sie können sie umbenennen.
Sie sind frei, den Code zu verwenden und zu ändern, einschließlich der Änderung des Seitenlayouts.
Ändern Sie den Code, um neue Funktionen hinzuzufügen oder das Design so anzupassen, dass die Seite leicht verständlich und benutzerfreundlich ist.
Entpacken Sie die heruntergeladene "count.php.zip"-Datei, und es wird eine Datei namens "count.php" erstellt. Bitte erstellen Sie ein Verzeichnis wie "download_history" und speichern Sie es dort.
Die "zip"-Datei enthält nur eine Datei, "count.php", und der "Anmeldebildschirm" für den Administrator wird automatisch generiert.
Dies ist die Hauptmethode zur Konfiguration. Diese Hauptteile sind auch in der PHP-Datei aufgeführt.
- Passworteinstellungen:
- Ein Passwort muss für die Administratorseite festgelegt werden.
- Das Standardpasswort lautet "admin", aber ändern Sie es in eine Zeichenkette Ihrer Wahl.
- Um die Sicherheit zu erhöhen, setzen Sie ein starkes Passwort.
- Einstellen der herunterzuladenden Dateien:
- Schließen Sie die Einstellungen für "$targetFiles = array()" ab.
- Dies ist der Teil wie "'1' => 'Ihre URL/Dateiname.zip',".
- Verzeichnis zum Speichern von Protokolldateien:
- Ein Verzeichnis namens "log" ist auf dem Remote-Server erforderlich, um Protokolldateien zu speichern, die die Historie aufzeichnen.
- Dieses Programm erstellt automatisch ein Verzeichnis namens "log", wenn Sie es zum ersten Mal hochladen. Wenn jedoch eine Meldung wie "Kein Verzeichnis" erscheint, erstellen Sie es bitte separat und laden Sie es hoch.
- Anzeige des Upload-Verlauf bei der ersten Übertragung:
- Bei der ersten Übertragung können "Datum" und die Zahl "0" im Verlauf angezeigt werden.
- Dies liegt daran, dass auch Protokolldateien wie "count_1.log" mit dem Übertragungsdatum im automatisch generierten "log"-Verzeichnis erstellt werden.
- Wenn Sie dies stört, laden Sie eine Datei wie "count_1.log" vom Remote-Server herunter, löschen Sie die Daten und laden Sie sie erneut hoch.
- Es könnte jedoch auch ein Verlauf sein, wann der Zähler gestartet wurde. Wenn es an diesem Tag einen Download gibt, wird er gezählt.
- Anzeige der Administratorenseite:
- Wenn Administratoren die Seite anzeigen, können Sie wählen, ob die URL oder nur der Dateiname angezeigt werden soll.
- Wenn mehrere Historientabellen auf einer Seite platziert sind, können Sie wählen, ob sie in der Reihenfolge von "$targetFiles = array()" festgelegt bleiben oder in der Reihenfolge des Datums sortiert werden, wenn neue Protokolle aufgetreten sind.
- Seitenlayout, CSS, etc.:
- Passen Sie das Seitenlayout, das CSS usw. nach Bedarf an, um die Seite leicht lesbar zu machen.
- Früher wurde das CSS als externe Datei geschrieben, aber jetzt ist es auf derselben Seite geschrieben, damit Sie sich auf die Tags beziehen können, wenn Sie das CSS ändern.
- Einrichtung des Download-Links auf der Seite:
- Normalerweise wird der Download-<a>-Tag wie folgt geschrieben:
<a href="/download_history/sample.zip" download="File name when downloading.zip">[Beliebige Zeichenfolge]</a>
- In diesem Programm schreiben Sie den Download-<a>-Tag wie folgt:
- Passen Sie die Nummer in "download=1" an die Nummer an, die in "$targetFiles = array()" festgelegt ist. Diese Einstellung bezieht sich auf die herunterzuladenden Dateien.
- Passen Sie den Pfad zu Ihrer Seite an.
- Laden Sie die Seite mit dem Download-Link hoch, nachdem Sie die Datei mit "$targetFiles = array()" hochgeladen haben (in diesem Beispiel "count.php").
[Beispiel]Kopieren<a href="/download_history/count.php?download=1" download="File name when downloading.zip" target="_blank">[Beliebige Zeichenfolge]</a> - Normalerweise wird der Download-<a>-Tag wie folgt geschrieben:
- Code zum Anzeigen des Verlaufs in einer Zeile:
- Erstellen Sie den folgenden JavaScript und platzieren Sie ihn auf der Seite, auf der Sie ihn anzeigen möchten:
- Passen Sie die Nummer in "dsp_count=1" an die Nummer an, die in "$targetFiles = array()" festgelegt ist.
- Wenn Sie "&day_dsp=on," löschen, wird nur die "Gesamtanzahl" ohne die Anzeige von "Heute/Gestern" angezeigt.
- Passen Sie den Pfad zu Ihrer Seite an.
[Beispiel]Kopieren<script type="text/javascript" src="/download_history/count.php?dsp_count=1&day_dsp=on"></script>Gesamtzahl der Downloads: 1865 [Heute: 23 Gestern: 76]Gesamtzahl der Downloads: 1865
Wenn mehrere Tabellen angezeigt werden, ist die Standardkonfiguration dieses Programms, nach der Uhrzeit der letzten Aktualisierung zu sortieren. Wenn Sie nach der Gesamtanzahl der Downloads sortieren möchten, erstellen Sie eine neue Datei wie "total_downloads.php" und ersetzen Sie den folgenden Abschnitt.
- Änderungen in den Kommentaren
Ersetzen Sie die Kommentare im folgenden Abschnitt:// Wählen Sie aus, ob das ursprüngliche Array durch ein neues Array ersetzt werden soll, das in der Reihenfolge der neuen Logs sortiert ist, wenn auf einer Seite mehrere Tabellen angezeigt werden - Änderungen im Code und in den Kommentaren
Ersetzen Sie den Code und die Kommentare im folgenden Abschnitt. Betrachten Sie es als einen einzelnen Block.// Dateipfade und ihre letzten Aktualisierungsdaten abrufen (sortiert in absteigender Reihenfolge des Datums) $filePathsAndDates = array(); foreach ($filePath as $key => $path) { if (file_exists($path)) { $filePathsAndDates[$key] = filemtime($path); } else { // Diesen Fehler im Log ausgeben und entscheiden, ob der Vorgang fortgesetzt oder abgebrochen werden soll echo "Fehler: Datei existiert nicht - $path<br>"; } } // Sortieren in absteigender Reihenfolge nach dem letzten Aktualisierungsdatum (neuestes Datum zuerst) arsort($filePathsAndDates); // Das Array der sortierten Dateipfade neu erstellen $sortedFilePaths = array(); foreach ($filePathsAndDates as $key => $date) { $sortedFilePaths[$key] = $filePath[$key]; }
- Neue Dateien erstellen und installieren
- Um beim Erstellen mehrerer Seiten Fehler beim einheitlichen Festlegen von Elementen beim Hinzufügen von Inhalten zu vermeiden, erstellen Sie den Code für den Teil darunter in einer externen Datei und laden Sie ihn mit separatem Code in den aktuell implementierten Teil. Bitte erstellen Sie eine externe Datei mit einem Namen wie „config.php“.
// Konfiguration der herunterzuladenden Dateien. Wenn es mehrere Dateien gibt, fügen Sie diese als '2', '3', '4' usw. hinzu. Auch '0' ist gültig. // Verwenden Sie "http:" oder "https:" für das Protokoll. $targetFiles = array( '1' => 'IhreURL/Dateiname.zip', '2' => 'IhreURL/Dateiname.pdf', '3' => 'IhreURL/Dateiname.pdf', '4' => 'IhreURL/Dateiname.pdf', );
- Code zum Laden externer Dateien und wo sie abgelegt werden
- Fügen Sie die mit einem Namen wie "config.php" erstellte Datei an der folgenden Stelle mit dem Code "include __DIR__ . '/config.php';"
- Kommentieren Sie den folgenden Abschnitt aus oder löschen Sie ihn und ersetzen Sie ihn durch den Code "include __DIR__ . '/config.php';".
//$targetFiles = array( // '1' => 'IhreURL/Dateiname.zip', // '2' => 'IhreURL/Dateiname.pdf', // '3' => 'IhreURL/Dateiname.pdf', // '4' => 'IhreURL/Dateiname.pdf', //);
// Array, das die Gesamtzahl der Downloads speichert $totalDownloads = array(); // Den Dateipfad und die Gesamtzahl der Downloads abrufen foreach ($filePath as $key => $path) { if (file_exists($path)) { $line = file($path); $total = 0; // Summiere die Anzahl der Downloads für jede Zeile foreach ($line as $val) { $valArray = explode(',', $val); $total += trim($valArray[1]); } // Gesamtzahl der Downloads in einem Array speichern $totalDownloads[$key] = $total; } else { // Diesen Fehler in das Protokoll ausgeben und entscheiden, ob der Prozess fortgesetzt oder abgebrochen werden soll echo "Fehler: Datei existiert nicht - $path"; } } // Nach Gesamtzahl der Downloads in absteigender Reihenfolge sortieren arsort($totalDownloads); // Das sortierte Array von Dateipfaden neu erstellen $sortedFilePaths = array(); foreach ($totalDownloads as $key => $total) { $sortedFilePaths[$key] = $filePath[$key]; }
<!doctype html> <html> <head> <meta charset="UTF-8"> <title>DownloadHistory</title> <meta name="robots" content="NOINDEX,NOFOLLOW"> </head> <body> <?php // Machen Sie nur diesen Teil zu einer externen Datei und laden Sie sie mit „include __DIR__ . '/config.php';“ in die von Ihnen verwendete Seite. // Konfiguration der herunterzuladenden Dateien. Wenn es mehrere Dateien gibt, fügen Sie diese als '2', '3', '4' usw. hinzu. Auch '0' ist gültig. // Verwenden Sie "http:" oder "https:" für das Protokoll. $targetFiles = array( '1' => 'IhreURL/Dateiname.zip', '2' => 'IhreURL/Dateiname.pdf', '3' => 'IhreURL/Dateiname.pdf', '4' => 'IhreURL/Dateiname.pdf', ); ?> </body> </html>
include __DIR__ . '/config.php';
Damit endet die Einführung des PHP-Codes für das "Download-Zähler/Programm zur Anzeige des Download-Verlaufs." Wir hoffen, dass es Ihnen nützlich ist.
Es könnten Fehler in der Formulierung vorhanden sein, da dies eine Übersetzung aus der japanischen Version ist. Wir entschuldigen uns für eventuelle Unannehmlichkeiten, aber wenn Fehler in der Formulierung im Code auftreten, korrigieren oder passen Sie diese bitte selbst an.