Я использую ajax для вызова php-файла, передающего данные, которые я хочу записать в файл Excel. Я не хочу сохранять файл Excel на сервере, но хочу использовать $ objWriter-> save ('php: // output'); (часть PHPExcel), чтобы открыть его в браузере.PHPExcel открыть файл Excel с помощью ajax-вызова
Если я копирую вызов сценария ajax в свой браузер (вне моего веб-приложения), браузер создает файл, и браузер дает пользователю возможность открывать/сохранять его.
Но ... когда я запускаю его через вызов ajax в своем веб-приложении, ничего не появляется.
Я видел много сообщений, где у людей были подобные проблемы, но они не соответствуют тому, что я пытаюсь сделать. Большинство, казалось, фактически создавали файл на сервере, а затем возвращали имя файла в качестве результата для вызова ajax, а затем открывали этот файл. Поскольку я не создаю файл на сервере, это не сработает для меня.
Есть ли способ выполнить это с помощью ajax, php и PHPExcel? Есть ли способ открыть файл как часть инструкции $ objWriter-> save ('php: // output')?
Возможно, было бы полезно, если бы вы разместили (соответствующий) код, который вы используете. –
Ваш вызов Ajax должен обрабатывать потоковый двоичный ответ, если вы хотите сделать это через Ajax; гораздо проще просто использовать ссылку для загрузки –
. Используя ссылку, это не значит, что я должен сначала сохранить файл на сервере, а затем позволить человеку щелкнуть ссылку, чтобы перейти к файлу (если только я не недоразумение, что вы имеете в виду)? Поскольку несколько человек могут использовать это приложение и создавать немало файлов Excel, я не хотел создавать файлы на сервере, иначе мне пришлось бы работать над какой-то процедурой очистки, чтобы очищать файлы. – user3861284