Объект FormData получает только входные данные файла, а не другие входные данные, такие как текст.Jquery

Программирование на jquery
Ответить Пред. темаСлед. тема
Anonymous
 Объект FormData получает только входные данные файла, а не другие входные данные, такие как текст.

Сообщение Anonymous »

Я новичок в использовании объекта FormData и все еще пытаюсь ознакомиться с тем, как он работает. Итак, мне удалось опубликовать видеофайл в PHP-скрипт, который обрабатывает загрузку/перемещение видеофайла в папку. Однако я не могу передавать или публиковать другую входную информацию формы, например текст, введенный в текстовые поля формы.

Моя цель — передать/отправить все данные формы (видеофайл и текст в полях ввода) в PHP-скрипт. Я попытался var_dump массив $_POST, чтобы увидеть, есть ли другие данные, помимо $_FILES['file'].

Я могу получить входной файл, но не текстовый ввод. Я хочу отправить все данные формы одним нажатием кнопки.

Ниже показано, что я получаю от var_dump() - $_POST и $_FILES

Код: Выделить всё

array(0) {
}
array(1) {
["file"]=>
array(5) {
["name"]=>
string(48) "How to Create App Shortcut on Ubuntu Desktop.mp4"
["type"]=>
string(9) "video/mp4"
["tmp_name"]=>
string(14) "/tmp/phprG6kRC"
["error"]=>
int(0)
["size"]=>
int(10522522)
}
}
Он показывает массив (0){} для var_dump($_POST)

index.php

Код: Выделить всё


Lastname:   

Firstname:   

Middlename:   


Select Video




Upload








index.js

Код: Выделить всё

$('#myButton').click(function(){
upload();
});

function upload() {
var formData = new FormData($('#myForm')[0]); //initialized with myForm

$.ajax({
url: 'upload_video.php',
type: 'POST',
data: formData,
cache: false;
processData: false,  // tell jQuery not to process the data
contentType: false,  // tell jQuery not to set contentType
success: function (data) {
console.log(data);
alert(data);
},
error: function (x, e) {
if (x.status == 0) {
alert('You are offline!!\n Please Check Your Network.');
} else if (x.status == 404) {
alert('Requested URL not found.');
} else if (x.status == 500) {
alert('Internal Server Error.');
} else if (e == 'parsererror') {
alert('Error.\nParsing JSON Request failed.');
} else if (e == 'timeout') {
alert('Request Time out.');
} else {
alert('Unknown Error.\n' + x.responseText);
}
}
});
}
upload.php

Код: Выделить всё

var_dump($_POST);
var_dump($_FILES);
Насколько я понимаю, var formData = new FormData($('#myForm')[0]); инициализируется со всеми данными что форма имеет и содержится в переменной formData. Но он получает только ввод видеофайла в var_dump()

Почему он не может отображать другие значения данных формы, которые были опубликованы, например, последние имя, имя и отчество?

Буду признателен за любые предложения.

Спасибо.

Подробнее здесь: https://stackoverflow.com/questions/512 ... ch-as-text
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Jquery»