Ajax-POST-Anforderung über jQuery und FormData - $ _POST ist in PHP leer

Ich möchte mit jQuery und FormData ein Bild über Ajax auf den Server hochladen.

Mein jQuery-Code lautet wie folgt

var formData = new FormData("form")[0];
  var fileName = $("#InputLogo")[0].files[0].name;

  $.ajax ( {
      url : 'upload.php',
      type : 'POST',
      data : { "data" : formData, "fileName" : fileName },
      processData : false,
      success : function(data) {
          console.log(data);
          alert(data);
      }
  });

Dieser Code wird aufgerufen, wenn der Benutzer eine neue Datei zum Hochladen auswählt.

Mein Server-Backend ist PHP und es behandelt die Anfrage wie folgt

$data = $_POST['data'];
$fileName = $_POST['fileName'];
$fp = fopen('/img/'.$fileName, 'w');
fwrite($fp, $data);
fclose($fp);
$returnData = array("data" => $data);
print_r($_POST);

Die POST-Anforderung tritt jedoch auf$ _POST bleibt leer.

Ich habe versucht, nach der Lösung zu suchen, konnte aber keine genaue Lösung finden.

Anregungen wäre dankbar.

EDIT: Hier ist das Formular in HTML

<form id=card-form" method="post" action="" >
      <div class="form-group">
    <label for="InputName">Name of the Company</label>
    <input type="text" class="form-control" id="InputName" placeholder="Enter a name">
    </div>
    <div class="form-group">
    <label for="InputEmail">Email</label>
    <input type="email" class="form-control" id="InputEmail" placeholder="Enter email">
    </div>
    <div class="form-group">
    <label for="InputLogo">Choose a company logo</label>
    <input type="file" id="InputLogo" accept="image/*">
    <p class="help-block">For good visibility, please limit the image to 200 x 200 px</p>
    </div>
    <button type="submit" class="btn btn-default">Submit</button>
  </form>

Antworten auf die Frage(6)

Ihre Antwort auf die Frage