Go to most recent revision |
Blame |
Last modification |
View Log
| RSS feed
<?php
if (!defined('WBLEGAL')) die('Kann nicht ohne Personal WebBase ausgeführt werden.');
$res = db_query("SELECT `data`, `type`, `filename` FROM `".$WBConfig->getMySQLPrefix()."files` WHERE `id` = '".db_escape($id)."' AND `user_cnid` = '".$benutzer['id']."'");
if (db_num($res) == 0)
die($header.'<b>Fehler</b><br><br>Der Download wurde nicht gefunden.'.$footer);
$row = db_fetch($res);
// Abgeänderte Version von http://www.php.net/manual/de/function.fread.php (Benutzerkommentar)
$filename = $row['filename'];
$ctype = $row['type']; //application/force-download
if (strstr($_SERVER['HTTP_USER_AGENT'], "MSIE"))
//if (!headers_sent()) header("Cache-Control:");
//if (!headers_sent()) header("Cache-Control: public");
if (isset($_SERVER['HTTP_RANGE']))
{
$ary = explode("=",$_SERVER['HTTP_RANGE']);
if (count($ary) != 2) die(''); // Hinzugefügt
$size2=$size-1;
$new_length=$size2-$range;
}
else
{
$size2=$size-1;
}
$buffer = 1024*8;
$range = 0;
while ($range <= $size)
{
print(substr($row['data'], $range, $buffer)); // binary
$range += $buffer;
}
// Das "die" verhindert im Debugmodus die Fehlermeldung
// Notice: Trying to get property of non-object in /usr/share/php/Services/W3C/HTMLValidator.php on line 316
// Info: http://wordpress.macosbrain.com/2006/04/30/php-download-funktion-mit-multipart-und-resume/
?>