Задать вопрос
@vista1x

Отдать файл из PHP?

Здравствуйте!
Опишу ситуацию: есть PHP-скрипт, который генерирует zip-архив и отдает его на скачивание браузеру. В процессе создания архива могут возникнуть ошибки, в этом случае отдаются json-данные о этой ошибке. Сам скрипт вызывается из JS.
Сейчас в JS это реализовано так:
location.href='/scr.php';
Если ошибок нет, файл нормально скачивается браузером. Если ошибки есть, происходит переход на scr.php, на которой отображается текст в JSON-формате.
Вопрос: как обрабатывать эту ошибку в JS и действовать в зависимости от ситуации?
  • Вопрос задан
  • 2422 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Делайте запрос ajax-сом. Если все нормально, то возвращайте ссылку на созданный zip-архив и делайте переход на неё или создавайте тег a и эмулируйте клик по ней:
var link = document.createElement("a");
link.href = "test";
link.download = "test.zip";
var event = document.createEvent("MouseEvents");
event.initMouseEvent("click", true, false, self, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
link.dispatchEvent(event);

Ну а если есть ошибки, то тут вы можете обработать как вашей душе угодно.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽