Homepage selbermachen 7.851 Themen, 35.615 Beiträge

Ich will einige Sachen zum Download anbieten auf meiner HP...

DanieLLLL (Anonym) / 8 Antworten / Baumansicht Nickles

, und hätte gern gewusst, wieviele Leute diese Sachen runterladen... (CGI ev.?)
Was muss ich machen...?
Bitte helft mir und ich danke im Voraus...
Danke
D@nieLLLL

bei Antwort benachrichtigen
(Anonym) DanieLLLL (Anonym) „Ich will einige Sachen zum Download anbieten auf meiner HP...“
Optionen

welche sachen???

bei Antwort benachrichtigen
kq (Anonym) „welche sachen???“
Optionen

Er will nen Counter, der die Downloads zählt.

bei Antwort benachrichtigen
jensemann DanieLLLL (Anonym) „Ich will einige Sachen zum Download anbieten auf meiner HP...“
Optionen

Entweder siehst du mal auf den einschlägigen Seiten für CGIs vorbei, solltest du dort nichts finden, kannst du dich bei mir melden, dann schreib ich dir eben ein kleines CGI in Perl das die Downloads zählt, ist ne Sache von 10 Minuten. Würde das Script auch gleich hier posten, hab da aber gerade keine Zeit zu.
Du must natürlich bei deinem Provider die möglichkeit haben CGIs in Perl auszuführen, bei prohosting.com bekommst du so was z.B. kostenlos.
Mfg Jensemann

bei Antwort benachrichtigen
(Anonym) DanieLLLL (Anonym) „Ich will einige Sachen zum Download anbieten auf meiner HP...“
Optionen

Wäre nett wenn du das heir auch mal für andere Posten könntest :)

bei Antwort benachrichtigen
jensemann DanieLLLL (Anonym) „Ich will einige Sachen zum Download anbieten auf meiner HP...“
Optionen

Stimmt, hast recht! Hier ist es:

#!/usr/bin/perl

use CGI qw(:standard);

# gibt dem script als Parameter die Array Nummer der zu holenden Datei
my $getfile = param('getfile');
# endung der Lockdatei, wird an den Namen von $avaliable[n] angehangen
my $extension = 'txt';

# array der angebotenen Dateien
$available[0] = 'test.zip';
$available[1] = 'test.tar.gz';
$available[2] = 'test.tar.bz2';
$available[3] = 'foo.tar.gz';

if (defined $available[$getfile]) {
# nr existiert im array
# erzeuge Dateinamen
my $logfile = "$available[$getfile].$extension";

# öffne Dateihandle zum lesen UND schreiben
open(FILE, "+>$logfile");
# erste Zeile der Datei nach $counter einlesen und
# Zeilenumbruch entfernen
chomp($counter =

bei Antwort benachrichtigen
jensemann DanieLLLL (Anonym) „Ich will einige Sachen zum Download anbieten auf meiner HP...“
Optionen

Hab da noch was vergessen: Der Pfad zum Perlinterpreter muss eventuell angepasst werden, #!/usr/bin/perl muss also abgeändert werden (Pfad beim HP-Provider erfragen).
Mfg Jensemann

bei Antwort benachrichtigen
jensemann DanieLLLL (Anonym) „Ich will einige Sachen zum Download anbieten auf meiner HP...“
Optionen

Ich bin auch zu blöd heute! Jetzt habt ihr das script und wisst nicht was ihr damit machen sollt (oder wie ihr es benutzt). Also, gesetzt den Fall, das Script liegt im Stammverzeichniss deiner Seite, dann rufst du es so auf:
scriptname.pl?getfile=2
Die Nummer gibt die Nummer der Datei an, die runtergeladen werden soll. Mit Nummer ist die Nummer gemeint, die im Array dieser datei zugeordnet ist. Ein Aufruf mit 2 würde also die Datei www.meinedomain.de/test.tar.bz2 runterladen und den Counter in die Datei test.tar.bz2.txt schreiben. Im Array, können natürlich auch Pfade angegeben werden (aber keine Domains, dazu müsste der print redirect("bla-foo-bla") aufruf abgeändert werden. Der Wert der Variablen im Array wird einfach an die Domain angehangen.
So, ich hoffe das wars jetzt.

bess demnähx
Mfg Jensemann

bei Antwort benachrichtigen
(Anonym) DanieLLLL (Anonym) „Ich will einige Sachen zum Download anbieten auf meiner HP...“
Optionen

Vielen Dank !

ach ja, ich nehme an man sollte es im ASCII Modus aufladen und bei chmod 755 geben.

bei Antwort benachrichtigen