Загрузка Ajax-файла - PullRequest
       5

Загрузка Ajax-файла

3 голосов
/ 15 декабря 2009

У меня есть форма для загрузки файла, я обработал бы файл, встроенный в ajax, но я не знаю, как я могу получить данные с помощью ajax.

В моем скрипте я использую этот метод:

 $.ajax(
            {
                type:    "POST",
                url:     "upload.php",
                data:    ({ file : '???' }),
                success: function(msg)
                {
                    $('#upload_box').html(msg);
                }
            });

Как я могу объявить переменную 'file', извлекающую данные файла? (имя файла, tmp_name, тип, размер и т. д.).

Ответы [ 3 ]

2 голосов
/ 15 декабря 2009

Вы можете загрузить файл на сервер, вызвать скрипт php, чтобы прочитать его обратно, а затем сбросить его в любой тег, из которого вы хотите прочитать

            //In your onUpload callback
            var req = createRequest();
            req.open("GET", 'upload.php?file=' + filename,true);

            req.send(null);
            //Do your status checking
            var filetext= req.responseText;

Фреймворки не решают всех проблем, и если вы используете ту, которая требует обходных путей, вам следует вернуться к основам, потому что это МОЖЕТ быть сделано с использованием vanilla javascript с некоторым PHP.

2 голосов
/ 15 декабря 2009

Вы не можете сделать это с помощью стандартного запроса AJAX. Самый распространенный способ - отправить файл на скрытый iFrame, как показано в этого руководства .

Поскольку вы используете jQuery, вам может пригодиться библиотека AJAX Upload .

0 голосов
/ 15 декабря 2009

Я решил с плагином Jquery Form (http://malsup.com/jquery/form/)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...