Я использую formData
, чтобы добавить информацию об изображении и извлечь ее в мой API, используя php.
Я добавляю свои данные так:
insertService(nom: string, fileToUpload: File): Promise<any> {
const url = 'http://localhost/Admin/src/api/api.php?action=insertService';
const formData: FormData = new FormData();
formData.append('image', fileToUpload);
const param = {nom: nom, image: formData};
console.log(param);
const request = this.http.post(url, param);
return request.toPromise();
}
Итак, как вы можете видеть, я добавляю свои данные в 'image'.
И вот я пытаюсь извлечь это
$nom = $_POST['nom'];
$image = $_POST['image'];
echo ('nom ' .$nom);
echo ('image :' .$image);
echo($_FILES["image"]["name"]);
$filetmp = $_FILES["image"]["tmp_name"];
$filename = $_FILES["image"]["name"];
$filepath = "../assets/img/" . $_FILES["image"]["name"];
move_uploaded_file($filetmp, $filepath);
$query = 'INSERT into etservice(nom_service,image_ser) values("' . $nom . '","' . $filepath . '")';
$result = $db->query($query);
if ($result === TRUE) {
$res = "Inserted'$nom' and image '$image' ";
echo json_encode($res);
} else {
echo json_encode("Error" . $query . "<br>" . $db->error);
}
Это показывает мне эту ошибку
Примечание: изображение: преобразование массива в строку
Кто-нибудь может мне помочь, пожалуйста?