Скрипт для загрузки файла zip работает некорректно

LenaWriter

Новичок
Скрипт для загрузки файла zip работает некорректно. Это обычная страничка, без базы данных. zip-файл лежит на хостинге в папке с index.html и этим файлом РНР для загрузки. Если кликнуть по ссылке на страничке "Скачать файл" - открывается окошко для загрузки пустого файла (0 байт). Файл на сервере весит 2700 (папка zip). Почему так работает, и где ошибка в коде?
PHP:
<? 
  if ($_GET["id"]==1) 
  { 
    // Допустим id=1 обозначает файл file.zip 
    $real_path = "file.zip"; 
    $content_type = "application/zip"; 
    $file_name = "file.zip"; 
     
     
    header("Content-type: $content_type"); 
    header("Content-Disposition: attachment; filename=$file_name"); 
   
     
    $handle = fopen($real_path, "rb"); 
    $contents = ''; 
    while (!feof($handle)) { 
      $contents .= fread($handle, 120000); 
    } 
    fclose($handle); 
   
    echo $contents; 
  } 
?>
Как выглядит Окошко для загрузки (в прикрепленном файле)
okoshko-download3.jpg
 

AnrDaemon

Продвинутый новичок
Простите, а где, в каком месте вашего кода вы передаёте браузеру размер файла?
 

cia

Новичок
Если файл обязательно отдавать через php, то нужно поставить заголовок "Content-Length". Но файл скачиваться должен и без него.
 

WMix

герр M:)ller
Партнер клуба
Если файл обязательно отдавать через php, то нужно поставить заголовок "Content-Length". Но файл скачиваться должен и без него.
конечно скачается, вопрос только а сколько процентов скачалось уже
 
Сверху