Шпаргалки →  Загрузка файла при помощи Ajax

Как отправить файл на сервер аяксом.

Имеем форму:
<form method='post' enctype='multipart/form-data'>
<input type="file" id="imf" name="imf"/>
<input type="button" id="Save"/>
</form>

Отправляем методом пост содержимое файла и имя файла. Замечу, что данные придут в переменной $_POST. Далее, используя fwrite пишем файл, куда надо.
$("#Save").live("click", function(){

var photo = document.getElementById("imf");
var file  = photo.files[0];

   $.post('/user/saveNewPhoto', {'imf':file.getAsDataURL(), fname:file.fileName }, function( data ){
   alert ( data );
    });

});

На больших файлах не опробовано.
2


Вставка изображения
Файл:
Ссылка:
Выравнивание:
Описание:
комментарии(1): 
dodik 25 февраля 2010, 10:34 #
1 
а еще вместо:
file.getAsDataURL()

можно сделать:
file.getAsText("utf8")

и это будет именно контент самого файла, а то в первом случае его нужно будет еще разбирать

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста, или зарегистрируйтесь, если не зарегистрированы.