Upload image dans base de données
Bonjour,
Mise en contexte:
- L'utilisateur sur mon site doit télécharger une image, cette image doit s'ajouter dans le dossier 'uploads/positions/', ensuite je veux que le chemin d'accès de l'image ajouté doit être ajouter dans la base de donnée pour pouvoir récupérer le lien quand je veux pour avoir cette image. Il est prévu qu'un grand nombre d'image soit télécharger par les utilisateurs. les dossier qui doivent accueillir les images ont toutes les permission (777).
Problèmes:
- aucune images n'est energistrer dans le dossier. Et aucun lien n'est ajouter dans la base de donnée.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| $imagePath = null;
if (!empty($_FILES['position_image']['name'])) {
$uploadDir = '../../uploads/positions/';
if (!is_dir($uploadDir)) {
mkdir($uploadDir, 0777, true);
}
$fileName = basename($_FILES['position_image']['name']);
$filePath = $uploadDir . uniqid() . '_' . $fileName;
$fileType = strtolower(pathinfo($filePath, PATHINFO_EXTENSION));
// Validation du fichier
$allowedTypes = ['jpg', 'jpeg', 'png', 'gif'];
if (!in_array($fileType, $allowedTypes)) {
die('Erreur : Type de fichier non supporté. Types acceptés : JPG, JPEG, PNG, GIF.');
}
if (move_uploaded_file($_FILES['position_image']['tmp_name'], $filePath)) {
$imagePath = $filePath;
} else {
die('Erreur lors du téléchargement de l\'image.');
}
} |