<?php //dossier temporaitre pour les images define('PATH_TO_TEMP', "temp"); // Vérifier si le formulaire a été soumis if($_SERVER["REQUEST_METHOD"] == "POST") { // Vérifie si le fichier a été uploadé sans erreur. //format de la réponse if(isset($_FILES["photo"]) && $_FILES["photo"]["error"] == 0) { $allowed = array( "jpg" => "image/jpeg", "png" => "image/png", "PNG" => "image/PNG" ); $filename = htmlspecialchars(trim($_FILES["photo"]["name"]));// évite les noms de fichiers trop exotiques $newfilename = $filename; $filetype = $_FILES["photo"]["type"]; $filesize = $_FILES["photo"]["size"]; $message = ""; $error = true; $errorType = ""; // Vérifie l'extension du fichier $ext = pathinfo($filename, PATHINFO_EXTENSION); if(array_key_exists($ext, $allowed))//die("Erreur : Veuillez sélectionner un format de fichier valide."); { // Vérifie la taille du fichier - 1 Mo maximum $maxsize = 1 * 1024 * 1024; if(!($filesize > $maxsize)) //die("Error: La taille du fichier est supérieure à la limite autorisée."); { // Vérifie le type MIME du fichier ATTENTION - VERIFIE SEULEMENT L'EXTENSION if(in_array($filetype, $allowed)) { // Vérifie si le fichier existe avant de le télécharger. if(file_exists(PATH_TO_TEMP."/".$_FILES["photo"]["name"])) { //echo $_FILES["photo"]["name"] . " existe déjà."; $error = false; move_uploaded_file($_FILES["photo"]["tmp_name"], PATH_TO_TEMP."/".$newfilename); $message = $_FILES["photo"]["name"] . " existe déjà."; } else { move_uploaded_file($_FILES["photo"]["tmp_name"], PATH_TO_TEMP."/".$filename); // echo "Votre fichier a été téléchargé avec succès."; // echo("<br></br>"); // echo "taille de la photo : ".$_FILES["photo"]["size"]." octets"; $error = false; $message = "Votre fichier a été téléchargé avec succès.<br></br> Taille de la photo : ".$_FILES["photo"]["size"]." octets"; } } else{ // echo "Error: Il y a eu un problème de téléchargement de votre fichier. Veuillez réessayer."; $message = "Error: Il y a eu un problème de téléchargement de votre fichier. Le format $filetype n'est pas accepté."; $errorType = "MIME"; } } else { $message = "Error: La taille du fichier est supérieure à la limite autorisée."; $errorType = "poids_taille"; } } else{ $message = "Erreur : Veuillez sélectionner un format de fichier valide."; $errorType = "format"; } } else{ // echo "Error: " . $_FILES["photo"]["error"]; $message = "Error: " . $_FILES["photo"]["error"]; } $data = array( "errorType"=>$errorType, "message" => $message,//<--Message qui pourra être affiché "error" => $error,//<----- Prend la valeur true (erreur!) ou false (ouf!) // "src" => PATH_TO_ID."/".$_FILES["photo"]["name"] ); echo json_encode($data); } ?>