Загрузка файлов на другой сервер
Добрый день.
Прошу вашей помощи по теме загрузки файлов. Сначала опишу задачу, а потом приведу список того, что пробовал. Задача: Есть 2 сервера domain.ru и static.domain.ru, первый непосредственно генерирует код страницы, на втором хранится статическая информация (css, картинки, js). Решил добавить функцию загрузки картинок пользователями, способов много, поэтому на всякий случай решил посоветоваться. Дано: <iframe name="uploader" style="display:none;"></iframe> <form name="visibleFrm" target="uploader" action="//static.domain.ru" method="post" enctype="multipart/form-data"> <input name="img" type="file" /> </form> Тут всё просто, загружаем файл на второй сервер через скрытый фрейм. Загвоздка: После загрузки в зависимости от результата (файл загружен или какая-нибудь ошибка), необходимо сделать запрос на 1 сервер с командой добавить картинку в базу, и вывести форму для добавления комментария к изображению. Реализаций масса: iframe onload, header, script, но какой из них придерживаться? Начинаю плутать когда получаю от iframe результат img7777(новое имя файла) или error-text(текст сообщения об ошибке), как это рациональнее сделать, подскажите пожалуйста. Что сделано: static.domain.ru в фрейм при успешной загрузке отвечает 1234(новое имя картинки) или "Текст ошибки". Знаю как вывести полученную картинку на родительскую сраницу, без перезагрузки и добавить поле для комментария с кнопкой сохранить. Не знаю: Как обработать полученный результат. Знаю как получить текст iframe, не знаю в какой момент это сделать, по какому событию, ведь какое-то время займёт сама загрузка файла. Делал так: function submitButtonClck() { visibleFrm.submit(); var result_text = document.getElementById('frm').contentDocument.body.innerHTML if(isNan(result_text)) { alert('Текст ошибки') } else { // Выводим загруженную картинку и поле для добавления комментария } } |
http://habrahabr.ru/post/114432/
По моему вполне годный вариант для того чтоб отправить запрос на добавление картинки в базу |
Часовой пояс GMT +3, время: 02:38. |