PDA

Vollständige Version anzeigen : Downloadzähler


Hirn
03.05.2003, 22:33
Hi,

ich möchte einen Zähler für Downloads für ne Webseite erstellen. Ungefähr so: Ich habe einen Link auf eine Datei zum Download, wenn dieser Link angeklickt wird, dann soll ein Zähler raufgesetzt werden...

Hat jemand ne Idee?

Gruß Hirn

Matthy
05.05.2003, 12:45
Zunächst einmal wäre nicht schlecht zu wissen welche Möglichkeiten dir zur Verfügung stehen.

PHP, ASP, MySQL und co.

Was unterstützt dein Webspace? Ich habe das bei mir damals über PHP und MySQL gelöst.

MFG,

Matthy.

Hirn
05.05.2003, 22:49
Hi,

PHP ja, MYSQL Nein.

Aber man kann die Info, ja auch in ne txt-Datei schreiben. Ich bin mir nur nicht sicher, wie ich den Link anlege...Eigentlich müßte ich ja auf ne php Datei verweisen. Nur was gwenau steht in der PHP Datei, außer dem hochzählen des Downloads... Dort müßte ja auch noch der download der Datei gestartet werden...

Gruß Hirn

Matthy
06.05.2003, 07:23
Eine php-Datei ist eine gewöhnliche HTML-Datei. Wenn du also deine Page einfach umbenennst in ".php", dann wird diese sofort funktionieren.

Zusätzlich kannst du allerdings flexiblen Code einbauen welcher mit

<?
... diverser Code ....
?>

vom eigentlichen HTML-Code getrennt wird. Das ganze kann am Anfang, am Ende oder irgendwo in der Mitte der Seite stehen. Es ist völlig egal, solange die oben gezeigte Abgrenzung stattfindet.

Dein Problem lässt sich übrigens natürlich auch über Textdateien lösen, aber sicher nicht so schön. Egal... Soll für jede einzelne Datei ein eigener Counter angezeigt werden oder soll es einen Zähler geben, welcher immer um eins erhöht wird, sobald irgend eine Datei downgeloaded wird?

MFG,

Matthy

Hirn
06.05.2003, 07:46
Moin,

selbstverständlich soll für jede Datei ein eigener Zähler existieren... Alles andere wäre ja zu einfach.

Ich bin mir auch noch nicht sicher, ob direkt auf der Webseite die Info angezeigt werdn soll. Das bekomm ich auch so hin. Ist ja dann nichts anderes als ein Counter für ne Webseite...

Gruß Hirn

PS: Was PHP ist, weiß ich. Mir geht es nur um die Funktion. Ich hab da wohl ein Brett vorm Kopf...

Matthy
06.05.2003, 08:38
Na gut... Jetzt haben wir das ja eingegrenzt.

Ich würde das wie folgt lösen. Beim Klick auf den Link wird nicht die Datei selbst downgeloaded sondern eine (nennen wir sie) "download.php" aufgerufen mit den Parametern "?link=" und dann entweder die ID oder den Namen des Links.

In der "download.php" steht dann ungefähr etwas in die Richtung drinnen.

<?
#download.txt öffnen nach dem Wert $link suchen und diesen Wert um 1 erhöhen.
?>

So ungefähr müsste das hin hauen.

Auf der eigentlichen Seite musst du natürlich dann noch die "download.txt" jedes mal öffnen und neben jeden Link den Downloadwert schreiben.

Hoffe du kannst etwas damit anfangen.

MFG,

Matthy.

Hirn
06.05.2003, 09:03
Hi,

also den Inhalt aus der txt Datei auslesen, hochsetzten ist kein Problem. Hier der Code:

<?php
$Datei = fopen("zahl.txt", "r+"); //Datei wird geöffnet.
//Ein Zeiger auf die Datei wird an die V. übergeben
$Inhalt = fread($Datei,20); //Der inhalt wird ausgelesen
fseek($Datei,0);
$Inhalt++;
fwrite($Datei,$Inhalt);
fclose($Datei);
?>

Jetzt fehlt aber noch der Download. Ich hab ja auf meiner html Seite einen Link auf dei PHP Datei. Dort wird der Zähler eins hochgesetzt und jetzt muß noch der download der Datei Test.doc gestartet werden.... Das ist mein Problem. Sorry, wenn ich ein bischen schwer von Begriff bin...

Matthy
06.05.2003, 09:16
Hallo.

Das ist im Post darüber unter gegangen. Ich hoffe diesmal wird der Code nicht interpretiert. Hier noch mal der restliche Code in der download.php

Bitte <a href="<? echo "$link" ?>">hier</a> drücken, sollte der Download nicht automatisch
starten.
<meta **********="refresh" content="0;URL=<? echo "$link" ?>">

Ich hab ja auf meiner html Seite einen Link auf dei PHP Datei

Das macht für mich nicht wirklich Sinn, da beides PHP-Seiten sein müssen. Wie zeigst du sonst auf der html-Seite an wieviel Downloads es bis jetzt gegeben hat?

MFG,

Matthy.

Hirn
06.05.2003, 09:33
Das ist richtig, außer ich möchte die Anzahl nicht anzeigen...

Ich versuchs mal.

Gruß Hirn

Hirn
06.05.2003, 09:47
OK,

funktioniert soweit so gut. Kann ich auch den Link als Parameter übergeben, wenn die aufrufende Seite ne HTML Seite ist?

Gruß Hirn

Matthy
06.05.2003, 10:27
Ja klar. Das ist kein Problem.

Trotzdem würde ich nicht zwischen html und php springen. Es schaut (für mich zumindest) komisch aus, wenn ich auf einer Seite surfe und dann oben sehe... html, php, php4. Da denk' ich mir: Wer immer das gemacht hat, hatte keinen Plan.

Du kannst ja auch die normalen html-Seiten in php ändern. Ändert sich ja von der Anzeige nichts. Aber wie gesagt... Das ist Geschmacksache.

MFG,

Matthy.

Hirn
06.05.2003, 11:05
Hi,

den Link shst Du in der Adresszeile bei meiner Webseite nicht. Nur die URL.

Noch ne andere Frage: Kann ich Dateieigenschaften auslesen? Ich möchte das letzte Updatedatum anzeigen lassen. Damit ich nicht vergesse, das Datum zu ändern, möchte ich die Eigenschaft der Index Seite auslesen und das Datum anzeigen lassen...

Gruß Hirn

Matthy
06.05.2003, 11:48
Pfuh... da bin ich jetzt überfragt.

Mach' am besten diesbezüglich einen neuen Thread auf.

Hirn
06.05.2003, 11:52
OK! Dank Dir trotzdem...

Ach ja: Wenn Du magst, schau es Dir mal an: www.andres-ct.de

Ist der Downloadbereich...

Matthy
06.05.2003, 12:40
Naja... So wie ich das sehe hast du das aber anders gelöst und damit die Funktionalität von php-Seiten sehr engeschränkt.

Du rufst jetzt für jeden Download eine andere Seite auf. Eigentlich solltest du immer die selbe Seite aufrufen und dort je nach Parameter die richtige Datei downloaden.

MFG,

Matthy.

Hirn
06.05.2003, 14:32
Du hast mich überzeugt. Ich habs geändert und Parameterübergabe realisiert...

Gruß Hirn

flori
07.05.2003, 12:57
Hallo,

ich habe die Diskussion ein wenig mit verfolgt. Ich habe es dann auch mal auf der Seite ausprobiert, und noch einen Fehler festgestellt. Wenn ich nämlich auf den Link klicke und sich dann das Downloadfenster öffnet, wird der Wert für die Anzahl der Downloads schon erhöht. Wenn ich die Datei aber nicht downloade, sondern den Button abbrechen klicke, wird das nicht berücksichtigt und es wird ein falscher Wert angezeigt.

Das nur als kleine Randbemerkung.

Gruß,
Flori