Ich kanns dir gerne posten, aber eigentlich kann in dem Code selber kein Fehler liegen, denn ich habe ihn nicht selber geschrieben. Ist der Downloadmanager xDownloads:
File download.php
<?
############################################
# + xDLs [x-devDownloads] v 1.0 #
# + by Robert Klikics #
# + visit: http://x-dev.de for more stuff #
# + License: GPL #
# + You may not remove the Copyrights #
############################################
# + Filename: download.php [main] #
############################################
include("func.inc.php");
// settings
$dbfile = "data.txt"; // datei zum speichern der daten [absoluter Pfad]
$adminpass = "werd ich hier nicht nennen!"; // admin-passwort
$scripturl = "$PHP_SELF"; // pfad zum script [kann so belassen werden]
// end settings
// ab hier nichts mehr ändern!!!!
if($act == "admin"):
?>
<html>
<head>
<title>xDLs</title>
<style type='text/css'>
das ist nicht alles, aber vielleicht hilft das schon...
und die File func.inc.php
<?
############################################
# + xDLs [x-devDownloads] v 1.0 #
# + by Robert Klikics #
# + visit: http://x-dev.de for more stuff #
# + License: GPL #
# + You may not remove the Copyrights #
############################################
# + Filename: func.inc.php [functions] #
############################################
//settings:
$dbfile = "data.txt"; // datei zum speichern der daten [absoluter Pfad]
//^^ settings
//ab hier nichts mehr ändern!!!
//die funktionen:
//alle DLs:
function allDL()
{
global $dbfile;
$datei = fopen($dbfile, "r");
$text = "<table width=\"30%\"><tr>";
while($zeile = fgetcsv($datei, 1000, "|")):
$text = $text . "<tr><td>$zeile[0]</td><td>$zeile[2]</td></tr>";
endwhile;
$text = $text . "</table>";
echo $text;
}
// einzelner DL:
function oneDL($id)
{
global $dbfile;
global $erg;
if($erg[$id] == ""):
$datei = fopen($dbfile, "r");
while($zeile = fgetcsv($datei, 1000, "|")):
$erg[$zeile[0]] = $zeile[2];
endwhile;
endif;
echo $erg[$id];
}
ist auch noch nicht alles aber ich hoffe es hilft.
Der Script insgesamt läuft gut. Ich kann im Adminmenü downloads eintragen und wenn ich diese downloade werden die Hits auch gezählt. Vielleicht ist auch einfach meine download Seite falsch - schau mal hier: vielleicht habe ich auch schon dabei was falsch gemacht:
<html>
<head>
<title>downloads</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<? include("download/func.inc.php"); ?>
<p><a href="download/download.php?id=1&go=browser">test download</a> </p>
<p>bisherige downloads des Test downloads:
<? oneDL("1"); ?>
</p>
<p>bisherige downloads gesamt:
<? allDL(); ?>
</p>
<p> </p>
</body>
</html>
und hier die Anleitung von xdownloads
############################################
# + xDLs [x-devDownloads] v 1.0 #
# + by Robert Klikics #
# + visit: http://x-dev.de for more stuff #
# + License: GPL #
# + You may not remove the Copyrights #
############################################
# + Filename: readme.txt #
############################################
*********
You have:
*********
- download.php [Mainfile]
- func.inc.php [Ausgabefunctionen]
- data.txt [Savefile, kann umbenannt werden]
*********
You need:
*********
- Webserver mit php 3/4 installiert
- 5 Minuten Zeit
- ...natürlich Downloads!
******
Setup:
******
- Variablen in download.php UND func.inc.php anpassen (Wichtig: PW ändern)
- download.php, func.inc.php & data.txt (oder unbenannte Datei) hochladen
- Datei zum speichern (default: data.txt) auf chmod 777 bzw 666 setzen (Schreibrechte)
***************
Use of Scripts:
***************
- admin-area via download.php?act=admin aufrufen [Passwort: test] und neue ID's etc. erstellen.
- Link* auf download.php?id=[ID] - Download wird gezählt und an den Browser via Header() weitergeleitet
*[ID] mit einer eingetragenen ID ersetzen
- die Downloads können auch via Browser-Refresh aufgerufen werden, das hilft z.B. bei Problemen mit DL-Managern etc.!
Dazu einfach an den jeweiligen Link folgendes hinten anhängen: &go=browser
- ACHTUNG: download.php bitte nicht direkt aufrufen!!!!
*******************************************
Anzahl der DLs auf externen Sites ausgeben:
*******************************************
- die Datei mit den Linkangaben muss auf .php, .php4 oder .phtml enden
- Folgendes am Anfang der Seite einsetzen: <? include("Pfad/zur/func.inc.php"); ?>
- um die Zahlen ALLER DLs anzeigen zu lassen (Tabelle wird generiert (siehe func.inc.php), einfach an gewünschter Stelle folgendes einsetzen: <? allDL(); ?>
- um die Zahl EINZELNER DLs auszugeben, folgendes einsetzen:* c
*[ID] mit einer eingetragenen ID ersetzen
- um DEN LETZTEN DL* anzuzeigen, folgendes einsetzen: <? lastDL(); ?>
* es wird NUR die [ID] ausgegeben, nicht der Pfad zum DL
********************************************
Bei Problemen auf x-dev.de vorbeischauen ...
Robert [x-dev.de]
********************************************