Загрузите файл через Ajax Call в PHPPhp

Кемеровские программисты php общаются здесь
Anonymous
Загрузите файл через Ajax Call в PHP

Сообщение Anonymous »

У меня есть кнопка и onclick . Он вызовет функцию AJAX. < /P>
Вот моя функция Ajax: < /p>

Код: Выделить всё

function csv() {

ajaxRequest = ajax(); // ajax() is a function that has all the XML HTTP Requests

postdata = "data=" + document.getElementById("id").value;

ajaxRequest.onreadystatechange = function() {
var ajaxDisplay = document.getElementById('ajaxDiv');
if(ajaxRequest.readyState == 4 && ajaxRequest.status == 200) {
ajaxDisplay.innerHTML = ajaxRequest.responseText;
}
}

ajaxRequest.open("POST", "csv.php", false);
ajaxRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
ajaxRequest.send(postdata);
}
< /code>
Я создаю файл CSV на основе пользовательского ввода. После того, как он создан, я хочу, чтобы он вызвал загрузку или загрузку (предпочтительно силы). Я использую следующий скрипт в конце файла PHP для загрузки файла. Если я запускаю этот скрипт в отдельном файле, он работает нормально. < /P>
$fileName = 'file.csv';
$downloadFileName = 'newfile.csv';

if (file_exists($fileName)) {
header('Content-Description: File Transfer');
header('Content-Type: text/csv');
header('Content-Disposition: attachment; filename=' . $downloadFileName);
ob_clean();
flush();
readfile($fileName);
exit;
}
echo "done";
Но если я запускаю его в конце файла csv.php , он выводит содержимое file.csv на страницу (в Ajaxdiv) вместо загрузки.>

Подробнее здесь: https://stackoverflow.com/questions/666 ... all-in-php

Вернуться в «Php»