Как я могу опубликовать данные формы с файлом в базе данных в ionic 3?
Я уже пробовал следующее решение:
мой файл service.ts:
addFilesApi(data): Observable<any> {
console.log("addFilesApi service data", data);
let headers = new Headers({ "enctype": "multipart/form-data" });
var form_data = new FormData();
for (var key in data) {
console.log("addFilesApi key", key);
form_data.append(key, data[key]);
console.log("addFilesApi form_data", form_data);
}
return this.http.post(apiUrl + 'FilesModule/addFile', form_data, { headers: headers })
.map((response) => {
console.log("addFilesApi response", response.json());
return response.json();
})
// .catch(this.handleError);
}
мой файл home.ts:
addFilesforRNAppz(event) {
let eventObj: MSInputMethodContext = <MSInputMethodContext>event;
let target: HTMLInputElement = <HTMLInputElement>eventObj.target;
let files = target.files;
let file = files[0];
let fileObj = {
User_Id: this.userId,
sessionId: this.sessionId,
File_Name: file,
File_Description: "new file created",
Categories_Id: 1
}
this.serviceProvider.addFilesApi(fileObj).subscribe((result) => {
// this.loader.hide();
console.log("result addFilesApi" +JSON.stringify(result));
// this.notes = result["data"];
if(result['success'] == 4) {
this.errorMessage = '';
let alert = this.alertCtrl.create({
subTitle: result["message"],
buttons: [
{
text: 'OK',
handler: () => {
console.log('ok clicked');
this.navCtrl.push("SigninPage");
}
}
]
});
alert.present();
} else if(result['success'] == 1) {
this.errorMessage = '';
this.getFilesFromDatabase();
} else if(result['success'] == 2) {
this.errorMessage = result['message'];
} else {
}
}, (err) => {
// this.loader.hide();
console.log("err addFilesApi" +JSON.stringify(err));
// Error log
});
}
файл my home.html:
Я могу отправить изображение на сервер, но не могу опубликовать файл в базе данных. Я должен сохранить любой тип файла в базе данных MySQL с параметром данных формы.
Как это возможно, если у вас есть какое-либо решение, пожалуйста, поделитесь здесь как можно скорее.