1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
|
// On initialise l'action à réaliser
$action = (isset($_POST['action'])) && !empty($_POST['action']) ? $_POST['action'] : NULL;
// On affecte comme valeur aux 2 variables FALSE par défaut
// On admet qu'à ce stade il n'y a pas d'erreur.
$erreur = false;
$erreur_img = false;
switch ($action) {
case 'INSERT_passager' : // Insertion des données de l'utilisateur
// SI le tableau $_FILE existe ET SI le tableau $_FILES contient l'élément 'photo'
if (isset($_FILES['photo']) && !empty($_FILES['photo'])) {
// Ok ... $_FILES existe ET n'est pas vide
if ($_FILES['photo']['error'] > 0) {
// [ERREUR] Valeur de error > à 0 donc ERREUR.
$erreur_img = true; // On affecte la variable à VRAI
// On recherche le type d'erreur
switch ($_FILES['photo']['error']) {
case 1 : $msgErreur[] = 'Le fichier téléchargé excède la taille de 2 mo.';
break;
case 2 : $msgErreur[] = 'Le fichier téléchargé excède la taille MAXFILE SIZE de 200 ko';
break;
case 3 : $msgErreur[] = 'Le fichier a été que partiellement téléchargé.';
break;
case 4 : $msgErreur[] = 'Aucun fichier a été téléchargé';
break;
//case 5 : $msgErreur[] = 'erreur';
//break;
case 6 : $msgErreur[] = 'Un dossier temporaire est manquant';
break;
case 7 : $msgErreur[] = 'Échec de l\'ecriture du fichier sur le disque';
break;
case 8 : $msgErreur[] = 'Une extension PHP a arrété l\'envoi de fichier';
break;
}
}
// On vérifie cette fois SI l'extension du fichier est valide
$type_fichier = array('image/png', 'image/gif', 'image/jpg', 'image/jpeg', 'image/bmp');
//$extension = $_FILES['photo']['type']; // Ne sert à rien finallement
//Si le type est vide OU SI le type n'existe pas parmi le tableau $type_fichier
if (empty($_FILES['photo']['type']) || !in_array($_FILES['photo']['type'], $type_fichier)) {
// [ERREUR] Type vide ou non autorisé
$msgErreur[] = 'ERREUR - Vous devez uploader un fichier de type png, gif, jpg, jpeg, ou bmp seulement!';
$erreur_img = true;
}
// SI aucune erreur
if ($erreur_img == false) {
// Exécuté seulement SI aucune erreur
$fichier = basename($_FILES['photo']['name']);
$taille_maxi = 200000;
$taille = filesize($_FILES['photo']['tmp_name']);
//$extension = strrchr($_FILES['photo']['name'], '.');
$fichier = strtr($fichier, '
ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
$dossier = '../images/img_membres/';
// Dernière étape : Déplacement du fichier
if (move_uploaded_file($_FILES['photo']['tmp_name'], $dossier.$fichier) == false) {
// Erreur pour déposer le fichier
$erreur_img = true;
$msgErreur[] = 'ERREUR - Lorsque que le fichier est déplacé dans l\'espace Web';
}
}
}
break;
}
// (plus loin dans le code) Partie HTML
// On affiche les éventuels erreurs
if ($erreur_img === true && !empty($msgErreur)) {
echo '<pre>';
print_r($msgErreur);
echo '</pre>';
} |
Partager