Wie Sie mehrere Dateien hochladen mit PHP, jQuery und AJAX
Habe ich entworfen, um eine einfache form, die dem Benutzer ermöglicht, Dateien auf den server hochzuladen. Zunächst enthält das Formular eine Schaltfläche 'durchsuchen'. Will der Benutzer mehrere Dateien hochladen, die er braucht, um klicken Sie auf die Schaltfläche "Mehr Dateien" - Schaltfläche fügt eine weitere Schaltfläche 'durchsuchen' in das Formular. Wenn das Formular abgeschickt wird, wird der upload-Vorgang behandelt wird, in 'upload.php' - Datei. Es funktioniert völlig in Ordnung für das hochladen mehrerer Dateien. Jetzt muss ich das Formular abschicken, indem Sie mit Hilfe von jQuery 's".submit()' und senden Sie eine ajax ['.ajax()'] Anforderung an die 'upload.php' Datei-handle der Datei-upload.
Hier ist mein HTML-Formular :
<form enctype="multipart/form-data" action="upload.php" method="post">
<input name="file[]" type="file" />
<button class="add_more">Add More Files</button>
<input type="button" id="upload" value="Upload File" />
</form>
Hier ist das JavaScript :
$(document).ready(function(){
$('.add_more').click(function(e){
e.preventDefault();
$(this).before("<input name='file[]' type='file' />");
});
});
Hier ist der code für die Verarbeitung von Datei-upload :
for($i=0; $i<count($_FILES['file']['name']); $i++){
$target_path = "uploads/";
$ext = explode('.', basename( $_FILES['file']['name'][$i]));
$target_path = $target_path . md5(uniqid()) . "." . $ext[count($ext)-1];
if(move_uploaded_file($_FILES['file']['tmp_name'][$i], $target_path)) {
echo "The file has been uploaded successfully <br />";
} else{
echo "There was an error uploading the file, please try again! <br />";
}
}
Irgendwelche Vorschläge, wie ich schreiben sollte meine '.submit()' Funktion wirklich hilfreich ist.
stackoverflow.com/questions/166221/... Ähnliche Frage mit möglichen Lösungen.
Entweder Einsenden oder hochladen, alles andere wird für mich arbeiten. Aber der Datei-upload ist die wichtigste Priorität.
InformationsquelleAutor Rivnat | 2013-10-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Endlich habe ich die Lösung gefunden, indem mit dem folgenden code:
Kalai ' s Antwort erzeugt mehrere Fehler. Das ist der Grund, warum ich nicht akzeptieren. Aber ich bin froh und dankbar, ihn, als er versuchte, Hilfe.
Schöne und einfache Lösung, wenn Sie in den code oben geschrieben, du verpasst ein ; am Ende..
danke. vermisst ; wurde Hinzugefügt.
Wie können wir diese durchsucht Dateien(formData) in php?
InformationsquelleAutor Rivnat
HTML
Javascript
für ajax upload
PHP
Bitte benutzen Sie das obige Skript Skript für die ajax-upload. Es funktioniert
Noch zeigt es "TypeError: filedata.Dateien, die nicht definiert ist" für " var i = 0, len = filedata.- Dateien.Länge, img, reader, Datei"; "
Ihr zeigen diesen Fehler "showUploadedItem ist nicht definiert". Was sollte ich tun, um es zu beheben?
Seine immer noch Neuladen meiner Seite
Es erscheint eine Fehlermeldung "filedata.Dateien, die nicht definiert ist" var "filedata = document.getElementsByName("file");"
InformationsquelleAutor Kalai
Meine Lösung
jQuery code
InformationsquelleAutor SandroMarques
HTML
Javascript
PHP
dies tut nichts, wenn ich es versuchte, ist es ein Fehler in der javascript?
InformationsquelleAutor Milan Krushna