простой вопрос, я думаю, но не могу понять это... Вот проблема:
В интерфейсе я экспортирую на сервер некоторые выбранные пользователем данные для динамического создания файла:
$("#export-button").click(function() {
$.post("'.$postUrl.'",{variable:exportSelection},
function(data) {
console.log(data);
}
);});
Затем, после получения данных и создания/сохранения файла на сервере, я делаю следующее в php:
if (file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;}
Что я должен делать в функции обратного вызова после публикации на консоли, чтобы получить подсказку для загрузки?
UPDATE: OK - я только понял, что моя кнопка # экспорта была привязанным тегом без href... Теперь, когда я указываю на файл на сервере, проблема в том, что когда я нажимаю, он следует подсказкам ссылок для сохранения файла и т.д., но он добирается до файла, прежде чем генерируется "новая" версия (так, используя предыдущий выбор при каждом нажатии)
ОК - я понял это. Мне просто нужно было отключить ссылку, указывающую куда угодно, а затем:
window.location = 'my_file_location.doc';
... внутри функции обратного вызова