Ich versuche, eine Bilddatei hochzuladen und auf meinem Server mit dem Pfad zum Speicherort der Datei gespeichert in einer Mysql-Datenbank zu speichern. Ich verwende eine Ajax-Anforderung, die Daten zu senden, sondern habe ernsthafte Probleme alle Teile der Datei zugreifen:Fehler beim Zugriff auf fileData
PHP
<input type="file" id="upload_file" name='upload_file' style="width: 0px;height: 0px;">
fordert diese Javascript
function upload_photo(user_id) {
var file = document.getElementById('upload_file')
/* Create a FormData instance */
var formData = new FormData(form);
formData.append('user_id', user_id)
formData.append('file', file)
request = new ajaxRequest()
request.open("POST", "edit_details.php", true)
request.setRequestHeader("Content-type", "multipart/form-data")
request.onreadystatechange = function() {
if (this.readyState == 4)
if (this.status == 200)
if (this.responseText != null)
O('page').innerHTML = this.responseText
}
request.send(formData)
}
Die Anfrage Nutzlast Aussehen wie folgt:
------WebKitFormBoundaryFA8fI4XH99ES61F6
Content-Disposition: form-data; name="file"
[object HTMLInputElement]
------WebKitFormBoundaryFA8fI4XH99ES61F6
Content-Disposition: form-data; name="user_id"
1001
------WebKitFormBoundaryFA8fI4XH99ES61F6--
Aber wenn ich einen var_dump ($ _ REQUEST) anrufe, druckt es
Irgendwelche Ideen? Ich habe mir Lasten angesehen, kann mich aber nicht durch dieses Problem arbeiten.
Ich sprach mit einem Professor an meiner Universität und er sagte, dass "multipart/form-data" kann ein Schmerz sein, mit zu arbeiten, und sagte, ich könnte besser mit einem PUT sein?
Das hilft enorm und hat mir eine Menge Zeit erspart, Vielen Dank –