Pendergast
Erfahrenes Mitglied
Also, wenn ich das richtig verstehe, dann soll über einen Skriptaufruf wie z.B. download.php?key=b07c325af32f203d ein einziges Mal eine mit dem Key verknüpfte Datei heruntergeladen werden können, und zwar ohne mitzubekommen, wo die Datei auf dem Server liegt.
Dann würde ich doch die Downloads außerhalb des Webverzeichnisses legen, damit nie ein direkter Download möglich ist und folgenden Skriptablauf verwenden:
a) mit Key verknüpfte Datei aus DB ermitteln, falls nicht vorhanden Fehlermeldung ausgeben
b) Eintrag des Keys aus der Datenbank entfernen, damit der Skriptaufruf mit dem Key nicht nochmal funktioniert
c) den zum Download passenden Header setzen
d) Download mit readfile() senden
In der Doku steht in den Bemerkungen eine Lösung, wie das funktionieren kann.
Dann würde ich doch die Downloads außerhalb des Webverzeichnisses legen, damit nie ein direkter Download möglich ist und folgenden Skriptablauf verwenden:
a) mit Key verknüpfte Datei aus DB ermitteln, falls nicht vorhanden Fehlermeldung ausgeben
b) Eintrag des Keys aus der Datenbank entfernen, damit der Skriptaufruf mit dem Key nicht nochmal funktioniert
c) den zum Download passenden Header setzen
d) Download mit readfile() senden
In der Doku steht in den Bemerkungen eine Lösung, wie das funktionieren kann.