Я использую плагин для выбора изображений, чтобы выбрать изображение, а затем заставить его загрузить. Я пытался жестко кодировать PHP, и он работает так, как ожидалось. Загрузите всплывающее окно, и мне удалось просмотреть файл. Я не уверен, почему он не работал в AJAX. Что мне не хватает?Сила для загрузки файла с использованием ajax и php
//get the image-source or URL
function getImageSrc()
{
var req = $("div[class='thumbnail selected']").children('img');
var imagessource = [];
$(req).each(function (datakey, datavalue) {
src = $(datavalue).attr('src');
imagessource.push(src);
});
return(imagessource);
}
Вот когда я нажимаю кнопку
$("#download_media").click(function() {
var file = getImageSrc();
$.ajax({
type: 'POST',
url: '?page=downloadController&action=downloadMedia',
data: {'file_url': file},
success: function(data) {
console.log("success");
}
});
});
Мой PHP FILE
public function downloadMediaAction()
{
//get the file_url
$file = $this->getRequest()->('file_url');
header("Content-Description: File Transfer");
header("Content-Type: application/octet-stream");
header('Content-Disposition: attachment; filename="'.basename($file).'"');
readfile($file);
}
Вы хотите, чтобы браузер отображал окно загрузки и т. Д.? Затем просто переадресуйте ссылку на эту ссылку. AJAX не предназначен для этого. –
Когда я пытаюсь, window.location ('ur'), он просто отображает страницу. он не загружался. – asdasdas
Вы пытались выполнить поиск, прежде чем опубликовать этот вопрос? Я наткнулся на множество ответов, касающихся ** вашего точного вопроса **, потратив всего 15 секунд на [Google] (https://www.google.com.au/search?site=&source=hp&q=ajax+force+file+ скачать и OQ = Аякс + сила + файл + скачать & gs_l = hp.3..0j0i22i30l2.142.4160.0.4325.27.17.1.0.0.1.623.2589.2-2j3j1j1.7.0.msedr ... 0 ... 1c.1.64.hp .. 20.7.2201.0.WdAWKKEFaK0): http://stackoverflow.com/questions/3502267/download-a-file-using-ajax –