Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   По загрузке файлов (https://javascript.ru/forum/events/69008-po-zagruzke-fajjlov.html)

rafaello 24.05.2017 09:09

По загрузке файлов
 
Здравствуйте!
У меня есть готовый скрипт. Там стандартным способом закачивается картинка на сервер. Вот код:
<input type="file" id="image-file" name="image-file" style="display: none;">
<div id="image-file-frame">здесь код.....</div>

......
$('#image-file-frame').click(function(){
    	$("#image-file").trigger("click");
    });
......
$('#portlets_modal #image-file').fileupload({
	        url: 'admin/index.php?object=project-common&action=upload-image',
	        dataType: 'json',
	        done: function (e, data) {........здесь код загрузки на сервер}

Теперь.
В виду того, что скрипт многопользовательский, мне просто необходимо сделать так, чтобы у каждого юзера была отдельная директория для загрузки картинок.
Я добавляю промежуточный этап. То есть не с компьютера, а с сервера, куда предварительно уже загружены картинки для каждого юзера в свою индивидуальную папку.
Вот что получилось
<a id="qu-qu" href="">загрузить картинку</a>
<input type="file" id="image-file" name="image-file" style="display: none;">

$('#qu-qu').click(function(){
			window.open('image.php', 'Image_Upload', 'width=500,height=400,toolbar=yes,scrollbars=yes,resizable=yes'); 
		 });

а вот файл image.php
echo '<a href="/data/images/111-1.png" onclick="selectFile(this)" title="111-1.png"><img src="/data/images/111-1.png"></a>';

function selectFile(a){
window.opener.document.getElementById('image-file').вот здесь что писать?
self.close();
}

Сейчас стоит такая задача.
При выборе картинки и клике в новом окне (image.php) надо, чтобы заданная картинка вставилась в <input type="file" id="image-file"...> и тут же вызвалась функция загрузки на сервер
$('#portlets_modal #image-file').fileupload({.......});
и чтобы это было одномоментно....
???????????
Буду благодарен за помощь

laimas 24.05.2017 09:30

Цитата:

Сообщение от rafaello
Я добавляю промежуточный этап. То есть не с компьютера, а с сервера, куда предварительно уже загружены картинки для каждого юзера в свою индивидуальную папку.

Если так, то зачем же Upload?

rafaello 24.05.2017 09:34

Код:

Если так, то зачем же Upload?
потому что это скрипт создания страниц сайта drag&drop и в каждом отдельном случае надо вставлять определенную картинку в определенное место на создаваемом сайте.

laimas 24.05.2017 09:45

Цитата:

Сообщение от rafaello
потому что это скрипт создания страниц сайта drag&drop

И что? Выбрали на сервере файл (надо полагать из файлов), которые отображаются по ссылке. Перетащили. Но input type file не работает с удаленными файлами, каким образом тут может быть upload?
Если перетащили, это означает из папки пользователя переместить например в папку проектов, то это сервер сделает и сам, никаких input для этого не требуется.

rafaello 24.05.2017 10:20

Да,вы все правильно говорите.
Я разобрался....
Что то сам перемудрил

laimas 24.05.2017 10:38

По большому счету "перетаскивание", это всего лишь процесс выбора клиентом файла из предложенного на сервере. Важно знать имя выбранного файла, а конструктор (как и сервер) ничего не перетаскивает, а формирует относительный путь к файлу по базовому пути.


Часовой пояс GMT +3, время: 13:47.