Ich UI wie folgt mit:
Wie kann ich mit PHP Ajax in mehrere Bilder hochladen
ich mehrere Videos mit Ajax in PHP hochladen möchten. Dafür habe ich FormData() in jQuery versucht. Aber es wird nur ein Bild hochgeladen, nicht mehr.
Meine Form file:
<form enctype="multipart/form-data" action="/test.php"
method="post" class="putImages">
<input name="media[]" type="file" multiple/>
<input class="button" type="submit" alt="Upload" value="Upload" />
<button type="button" id="add"></button>
</form>
Meine jQuery-Datei:
<script type="text/javascript">
$(document).ready(function() {
$("#add").click(function() {
var $div = $('div[id^="inputdiv"]:last');
var num = parseInt($div.prop("id").match(/\d+/g), 10) + 1;
var $klon = $div.clone().prop('id', 'inputdiv' + num).appendTo("#athleteRegister").insertBefore("#submitbutton");
$('#inputdiv' + num).find("input").attr('name', 'file[' + num + ']');
$('#inputdiv' + num).find("input").val("");
$('#inputdiv' + num).find("input").attr('id', 'file' + num);
$('#inputdiv' + num).find("input").css("outline", "none");
$('#inputdiv' + num).find("div.col-sm-1 i").attr('class', 'fa fa-minus');
$('#inputdiv' + num).find("div.col-sm-1 button").attr('id', 'remove');
$('#inputdiv' + num).find("img").attr('alt', 'remove');
});
$('#sub').click(function() {
jQuery.each($('input[name^="media"]')[0].files, function(i, file) {
data.append('file-' + i, file);
});
$.ajax({
type: 'POST',
data: data,
url: "../admins/test",
cache: false,
contentType: false,
processData: false,
success: function(data) {
alert(data);
}
});
});
});
</script>
Kann jemand dieses Problem lösen? Danke!
Bitte verwenden Sie 'serializeArray()' mit Eingaben an die Server-Seite zu senden. Oder Sie können Plugins von Drittanbietern wie https://blueim.github.io/jQuery-File-Upload/ – Nisam
@Nisam verwenden, die ich nur mit dem oben genannten Code ausführen muss –