За последние 24 часа нас посетили 20798 программистов и 942 робота. Сейчас ищут 536 программистов ...

Как отдать файл на загрузку

Тема в разделе "PHP для новичков", создана пользователем 440Hz, 13 дек 2007.

  1. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.632
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    что за пинпай?
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.902
    Симпатии:
    969
    viewtopic.php?t=50591

    Добавлено спустя 1 минуту 8 секунд:
    ты даже в треде участвовал. во у тебя память :D
     
  3. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    я ща кое-че переделываю и потом выкачу новую доку. И да, я понял, что большинство по-английски не читает. Будет и русская дока.
     
  4. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.632
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    про это я помнь). Вот только не знал я что это называется пинпай)
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    Пинпай!
     
  6. -PavelGR-

    -PavelGR- Новичок

    С нами с:
    16 июн 2021
    Сообщения:
    1
    Симпатии:
    0
    Столкнулся с такой проблемой.
    Имеется удаленный сервер с веб-сервисом, который на лету формирует zip-архив. Этот самый архив мне необходимо отдать пользователю, без сохранения на свой сервер.
    В данный момент код выглядит так:
    PHP:
    1. download_file('http://server/getfile?user='.$user.'&pass='.$pass);
    2.  
    3. function download_file($file) {
    4.     ob_clean();
    5.     header("Expires: 0");
    6.     header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    7.     header("Cache-Control: private", false);
    8.     header("Content-Type: application/zip");
    9.     header("Cache-Control: public");
    10.     header("Content-Transfer-Encoding: binary");
    11.     header("Content-Disposition: attachment; filename=\"file.zip\"; filename*=\"file.zip\"");
    12.     readfile($file);
    13.     exit();
    Данный код корректно работает в Chrome и Opera, а вот в Firefox, IE и Edge на скачивание прилетает пустой архив с нулевым размером.
    Как можно данную проблему побороть?
     
  7. MixazZz

    MixazZz Новичок

    С нами с:
    30 мар 2022
    Сообщения:
    54
    Симпатии:
    1
    Здравствуйте :) отдохнули от моих тупых вопросов? вот вам новый. короче делаю типа функцию для генерации пароля, пароль создается в файл, делаю все как в теме. отдаю файл на скачку, браузер скачивает его, но вместо одной строчки кода он ещё и скачивает весь HTML с страницы.
    PHP:
    1. <?php
    2. if ($_SERVER['REQUEST_METHOD'] == "POST") {
    3.     $pass = password_hash($_POST['pass'], PASSWORD_BCRYPT);
    4.     $file = fopen("password.txt", "w+");
    5.     $new = fwrite($file, $pass);
    6.     fclose($file);
    7.     $name = 'password.txt';
    8.     if (file_exists($name)) {
    9.         header('Content-Description: File Transfer');
    10.         header('Content-Type: application/octet-stream');
    11.         header('Content-Disposition: attachment; filename="' . basename($name) . '"');
    12.         header('Expires: 0');
    13.         header('Cache-Control: must-revalidate');
    14.         header('Pragma: public');
    15.         header('Content-Length: ' . filesize($name));
    16.         readfile($name);
    17.         exit;
    18.     }
    19. }
    20. ?>
    что я не так делаю? хотя другие файлы он скачивает нормально
     
  8. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.548
    Симпатии:
    1.754
    @MixazZz Методом POST ничего не скачивают
     
  9. MixazZz

    MixazZz Новичок

    С нами с:
    30 мар 2022
    Сообщения:
    54
    Симпатии:
    1
    Спасибо
     
  10. MixazZz

    MixazZz Новичок

    С нами с:
    30 мар 2022
    Сообщения:
    54
    Симпатии:
    1
    Даже когда убираю форму с методами, он всё равно скачивает страницу. А сдругими файлами всё норм