![Фотография](https://vse.kz/uploads/profile/photo-thumb-659.jpg?_r=1454524581)
Аплоад файлов без перезагрузки страницыAJAX
#2
Отправлено 11.01.2007, 02:19:45
![](https://vse.kz/public/style_images/osnovnoi34/post_offline.png)
Классная тема, правда БОЯН, но все же. Привьюшки можно юзать и без аплоада, для этого можно обойтись обычным JS.Как сделать аплоад файлов без перезагрузки страницы?
Т.е. есть форма загрузки файлов, чел загружает файл, допустим картинку, ему тут же показывается тумбнайл картинки, и если надо он загружает еще и еще.
#3
Отправлено 11.01.2007, 03:11:42
![](https://vse.kz/public/style_images/osnovnoi34/post_offline.png)
Чтобы передать файл на сервер без рефрэша надо использовать возможности Активных Иксов.
Механизм работы, при использовании ActiveX:
- Читаем файл.
- При необходимости пропускаем через base64.
- Дробим файл на пакеты, если файл большой.
- Формируем XML'ки
- Поочередно, шлем каждую XML'ку на сервер.
- Если требуется отслеживать процесс аплоада, то изменяем состояние, заранее написанного градусника.
Теперь о правильных, на мой взляд, способах аплоада:
а. Создается новое окно-потомок в котором и произойдет аплоад, далее какое-нибудь событие в окне-потомке вызовет метод окна-родителя, для изменения состояния флага.
б. В окне где-то есть фрэйм, далее фантазируем с фрэймом.
#4
Отправлено 11.01.2007, 11:42:47
![](https://vse.kz/public/style_images/osnovnoi34/post_offline.png)
просто надо создать html документ
а внутри скрытый фрейм в src которог скрипт принимающий multipart form data
и в этом же документе фрейм для отображения изображений
с фиксированным размером
для ресайза изображений используй этот скрипт
http://kiteco.net/pu...ge_resizer.html
#5
Отправлено 11.01.2007, 17:48:12
![](https://vse.kz/public/style_images/osnovnoi34/post_offline.png)
для ресайза изображений используй этот скрипт
http://kiteco.net/pu...ge_resizer.html
А зачем класс назвали "i"?
![;)](http://vse.kz/public/style_emoticons/default/lol.gif)
#7
Отправлено 12.01.2007, 00:25:31
![](https://vse.kz/public/style_images/osnovnoi34/post_offline.png)
Что значит имя? Роза пахнет розой, хоть розой назови ее, хоть нет (с) У. Шекспир2 Анре
придраться чтоли не к чему?
кому не нравиться тот переименует
Можно следовать фразе, прозвучавшей в произведении "Ромео и Джульетта", но в мире программирования надо соблюдать некоторые выработанные правила, одно из которых гласит: "Имя переменной должно отражать ее смысл.".
#8
Отправлено 12.01.2007, 00:51:24
![](https://vse.kz/public/style_images/osnovnoi34/post_offline.png)
2. "в мире программирования" как и "в мире животных" особо правил нету у каждого "вида" свои правила хорошего ТОНА... а самое главное чтобы работало и было эффективным, код конечно должен быть понятен (это в идеале), но ты посмотри на любой код закоренелого PERL'иста ) и попробуй назвать его програмером который пишет не по правилам...
3. вот ты сам прислушайся к словам шекспира которые ты написал и вдумайся какая разница как я назвал класс от этого смысл не меняется кому глаз режет тот поменяет )
#9
Отправлено 12.01.2007, 01:25:25
![](https://vse.kz/public/style_images/osnovnoi34/post_offline.png)
Меняет ли это смысл?1. это не имя переменой
/шепотом/ нет
Нет повести печальнее на свете, чем повесть о Ромео и Джульетте (с) У. Шекспир3. вот ты сам прислушайся к словам шекспира
Вывод:
- При кодировании надо использовать комментарии
- Называть все сущности логичными именами, четко отражающими их смысл
- Решать задачи на основе паттернов проектирования
- Документировать проект
#11
Отправлено 12.01.2007, 16:19:45
![](https://vse.kz/public/style_images/osnovnoi34/post_offline.png)
#13
Отправлено 12.01.2007, 16:52:17
![](https://vse.kz/public/style_images/osnovnoi34/post_offline.png)
Если бы это было возможным - это было бы большой дырой в безопасности. Грубо говоря, можно было бы считать на сервер любой локальный файл, доступный для чтения пользователю, просто зная его полное имя. Простой пример для старых виндов - C:\\Windows\\*.pwl, и для любых юниксов /etc/passwd
#14
Отправлено 13.01.2007, 10:46:04
![](https://vse.kz/public/style_images/osnovnoi34/post_offline.png)
Млин, а по теме выскажется кто-нибудь?
Аплоад файлов средствами AJAX возможен?
да.
http://uber-uploader.sourceforge.net/
#15
Отправлено 13.01.2007, 10:51:15
![](https://vse.kz/public/style_images/osnovnoi34/post_offline.png)
Насколько я понимаю, средствами JavaScript это вообще не возможно. Изначальная парадигма Java перешла в JavaScript - отсутствие возможности прямой работы с локальными файлами. Т-е, сделать сам POST с помощью XMLHTTPRequest ты сможешь, но вот считать локальный файл в какую-нибудь структуру JavaScript, навряд ли.
Если бы это было возможным - это было бы большой дырой в безопасности.
а как же
new ActiveXObject("Scripting.FileSystemObject");
?
другое дело, что такой код сможет выполнить только IE
#16
Отправлено 13.01.2007, 11:16:35
![](https://vse.kz/public/style_images/osnovnoi34/post_offline.png)
Давно не юзаю тему аплоадов через АЖАКС, но что-то мне говорит, что данный вами линк - скрипт-градусник, а урл по-любой изменится, если там нет ActiveX.
Млин, а по теме выскажется кто-нибудь?
Аплоад файлов средствами AJAX возможен?
да.
http://uber-uploader.sourceforge.net/
Ну как угадал?
Если это и вправду безрефрешный алоадер, то мой респект девелоперам.
Сообщение отредактировал T. Anre: 13.01.2007, 11:17:15
Количество пользователей, читающих эту тему: 2
пользователей: 0, неизвестных прохожих: 2, скрытых пользователей: 0