Intereting Posts
Как использовать две формы и отправить один раз? TwitterOAuth от Авраама – Не удалось аутентифицировать вас; Ошибка: 32 Как добавить несколько строк в Zend_Db? MVC с путаницей переднего контроллера Добавить Access-Control-Allow-Origin в заголовок в PHP Загрузите блок за пределы Magento и примените текущий шаблон Определите следующий номер в запросе базы данных с циклом while в php Необходимое руководство по перенаправлению пользователя, если он не вошел в систему на панели администратора «Не удается отправить ограничитель кеша сеанса – уже отправленные заголовки» php-код для экспорта базы данных mysql htaccess не работает на iis Есть ли способ загрузить страницу facebook внутри моей холдинговой страницы приложения facebook построить php5.3.8 на ubuntu, получить ошибку: configure: error: Не удалось найти gmp.h ТипError: k.google.maps.Load не является функцией ошибки в gmap Исключение при загрузке фотографии с помощью API-интерфейса Facebook Graph

Как легко загружать файлы без отправки формы (с помощью jQuery + AJAX)

Поэтому у меня есть код обработки формы, который обрабатывает стандартные текстовые входы, а также загруженные файлы (через массив $ _FILES)

Я хочу, чтобы представление было сделано через AJAX

Будет ли сообщение jQuery (). метод все еще передает этот материал через -> $ _FILES или мне нужно сделать что-то особенное?

Ajax (как определено, используя JavaScript) не может выполнять загрузку файлов, так как JavaScript не может получить доступ к локальной файловой системе. Существуют обходные пути, которые, как представляется, используют Ajax, например iframe или использование Flash.

Охота вокруг Google, вы найдете что-то. Есть больше библиотек (например, YUI), которые объединяют это.

Чтобы загрузить файлы через Ajax, вам необходимо использовать обходной путь с использованием iframes или Flash.

Я рекомендую вам Uploadify , он использует flash для загрузки и использует jQuery. Мне нравится то, что у него много настроек, и он поставляется с хорошим стилем по умолчанию для обработки очереди. Просто следуйте инструкциям, чтобы настроить его на своем сайте.

В скрипте PHP вы получите файл в массиве $ _FILES, как если бы это была обычная подача через форму, имя по умолчанию – «Filedata», поэтому вы можете получить доступ к своему файлу через $ _FILES ['Filedata'] , Затем просто выделите ответ для запроса Ajax (JSON или XML) и выполните некоторый код JS для события Uploadify onComplete.

Вы можете попробовать использовать API загрузки файлов HTML 5, для чего потребуется перетащить файл в окно браузера. Подробнее здесь: http://www.appelsiini.net/2009/10/html5-drag-and-drop-multiple-file-upload

Кроме того, вы можете сделать то же самое с Google Gears (для чего требуется установка для IE, но по умолчанию используется в Chrome).

Можно обнаружить наличие и изящно деградировать.