Я хотел бы загружать файлы так же, как и в Google Mail. Я хотел бы использовать jQuery и PHP, чтобы сделать это, так или иначе, чтобы получить progressbar и т. Д.?
Здесь я добавил видео о том, как это делает Google. http://dl.getdropbox.com/u/5910/Jing/2009-04-02_1948.swf
Нет вспышки, нет perl или cgi, пожалуйста ..
Наверное, я могу жить без прогресса. Теперь я ищу информацию о плагинах jquery или о том, что мне нужно будет посмотреть
Странно, что люди говорят, что gmail не использует flash, когда вы можете явно увидеть swf-файл в интерфейсе gmail. Попробуйте щелкнуть правой кнопкой мыши по «Прикрепить файл». Это то, что позволяет одновременно загружать несколько загрузок.
Самым простым было бы использовать SWFUpload , это небольшая кнопка, написанная во Flash, со всеми крючками для управления ею в JS. Очень проста в использовании и хорошо работает с PHP
но если вы действительно хотите, чтобы он был чистым JS, вам понадобится помощь с сервера. в частности, вам нужно будет запустить загрузку и периодически запрашивать сервер о том, как это происходит. К сожалению, загрузка PHP-загрузки не получает уведомления до завершения загрузки. вам придется заменить его чем-то другим. есть несколько чистых JS-загрузчиков, которые включают в себя пример кода сервера Perl только из-за этого.
IOW: JS и PHP не разрешают (полностью) его. либо добавьте флешку клиенту, либо лучше обработчик загрузки на сервере.
на мой взгляд отличная статья на эту тему: http://robertnyman.com/html5/fileapi-upload/fileapi-upload.html
к сожалению, для IE и Opera недостаточно поддержки, но, надеюсь, это изменится.
Uploadify – это еще одна кнопка загрузки swread (извините), которая использует jquery. Та же идея, что и Хавьер.
PHP не поддерживает отчетность о загрузке напрямую. Таким образом, нет возможности прочитать статус загрузки. Однако есть исправление, которое может работать. Я еще не пробовал.
GMail использует Flash для загрузки файла в фоновом режиме. SWFUpload – проект с открытым исходным кодом, который противостоит чему-то подобному.
… gmail использует iFrame с отображением стиля: hidden; затем, когда вы загружаете форму, она отправляет iFrame в URL-адрес для загрузки. Вспышки нет. Единственное, что Google делает со вспышкой в Gmail, просто вызывает шум для чатов. И вы должны разрешить это в настройках. Они не слишком сильно используют вспышку, потому что это довольно плохо, если использовать память и процессор. Javascript может делать все, что может сделать flash (albiet с гораздо большим количеством кода), но Javascript, в 99% случаев, намного быстрее и лучше по памяти.
Возможно, вы можете использовать PlUpload. Он поддерживает множество типов и настраивается. Вы можете проверить демо на веб-сайте. На домашней странице он также показывает, что он поддерживает на главной странице и имеет резервный механизм.
Изменить: он доступен как плагин jQuery.
SWFUpload является gud и совместим со всеми типами веб-приложений
Об Ajax не поддерживает двоичные данные при подаче формы. Существует обходное решение; если вы jQuery, то вы можете использовать этот плагин формы (от malsup) здесь по адресу http://www.malsup.com/jquery/form/ . Я использую его в течение многих лет …
Также plupload кажется многообещающим. Палец вверх для этого;) Я должен сказать, что он немного громоздкий !!!