Mehrere Dateien nicht gleichzeitig Herunterladen

  • Themenstarter Themenstarter MaxivB
  • Beginndatum Beginndatum
M

MaxivB

Hi,

wie kann ich es realisiereen, dass ein Benutzer nur eine Datei herunterladen kann und erst dann wieder, wenn die Datei fertig heruntergeladen?

Ich habe da eine Idee:
PHP:
<?php
session_start();
if (time() >= $_SESSION['time'] + 60 * 10) {
      $_SESSION['download'] = true;
      }
if ($_SESSION['download'] == true) {
     header("Content-Type: text/plain");
     echo "Dies ist eine Textdatei xDDD";
     $_SESSION['download'] = false;
     $_SESSION['time'] = time();
     }
?>
Aber nicht jeder Dwonload dauert 10 Minuten....
 
Ich hab jetzt doch selber eine Lösung gefunden (wird noch in MySQL geändert):
PHP:
<?php
$downloads = explode("\n", file_get_contents("./log"));
if (!in_array($_SERVER['REMOTE_ADDR'], $downloads)) {
	$fp = fopen("./log", "a+");
	fwrite($fp, $_SERVER['REMOTE_ADDR']."\n");
	fclose($fp);
	header("Content-Type: application/x-zip-compressed");
	header('Content-Disposition: attachment; filename="downloaded.zip"');
	readfile("./zip.zip");
	$downloads = explode("\n", file_get_contents("./log"));
	$count = 0;
	foreach ($downloads as $download) {
		if ($download == $_SERVER['REMOTE_ADDR']) {
			unset($downloads[$count]);
			break;
			}
		$count ++;
		}
	$fp = fopen("./log", "w+");
	fwrite($fp, implode("\n", $downloads));
	fclose($fp);
	}
?>

Aber: Trotzdem Danke!
 
Zurück