Отправлять данные и изображение в PHP через AJAX

Я пытаюсь передать свои данные вместе с изображением на php, но это вызывало ошибку undefined index, мой код выглядит следующим образом

HTML

<form class = "form-horizontal" name = "event" id = "event" enctype = "multipart/form-data">
 <input type = "text" name = "txtEName" id = "txtEName" required/>
 <input type = "text" name = "txtEFree" required placeholder = "(in minutes)"/>
 <input type = "text" name = "txtEFirstPay" required/>
 <input type = "text" name = "txtEFirstDuration" placeholder = "(in minutes)"/>
 <input type = "file" name = "files[]" multiple/> 
 <button type = "button" id = "saveEvent">SAVE</button>
</form

AJAX

 $("#saveEvent").on('click',(function() {
      var formData = new FormData($("#event"));
      $.ajax({
        url: "saveEvent.php", 
        type: 'POST',
        data: formData, 
        contentType: false,
        cache: false
        processData:false,
        success: function(data)
        {
          //further...
        }
      });
     }));

PHP

<?php
  require_once ("Php/db_connect.php");
  $name=$_REQUEST['txtEName'];
  echo var_dump($name);
  $free=$_REQUEST['txtEFree'];
  fpay=$_REQUEST['TxtEFirstPay'];
  $fduration=$_REQUEST['txtEFirstDuration'];
  $filename=$_FILES['filename']['name'];
  //upload code follows...
 ?>

Когда я пытаюсь использовать echo $name, он показывает ошибку

Notice: Undefined index: txtEName

в чем проблема. кто-нибудь, пожалуйста, помогите ..

Возможный дубликат stackoverflow.com/questions/10809937/undefined-index-with-po‌ st

Joseph_J 31.03.2018 07:51
$name = $_POST['txtEName']
ArmKh 31.03.2018 08:22

echo var_dump не нужен. var_dump печатает вывод автоматически

ADyson 31.03.2018 09:57

@ArmKh $ _REQUEST найдет либо сообщение, либо получение переменных, так что проблема не в этом.

ADyson 31.03.2018 09:58

@Seena, вы не можете отправить форму, содержащую файл, через ajax, вы можете увидеть stackoverflow.com/questions/2320069/jquery-ajax-file-upload

lucumt 31.03.2018 10:26

@lucumt сама ссылка, которую вы разместили в принятом ответе, имеет правку, в которой упоминается, что теперь это возможно в большинстве новых браузеров. Этому вопросу 8 лет, все изменилось. Поддержка начинается со следующих версий настольных браузеров. IE 10+, Firefox 4.0+, Chrome 7+, Safari 5+, Opera 12+

ADyson 31.03.2018 10:30
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
6
63
0

Другие вопросы по теме