menuvue = new Menuvueutilisateur(); $this->menuvue->getMenuVue('Remboursement'); $this->remboursement = new Remboursement(); $this->ged = new Ged(); } public function index($msgErreur=null) { $message = ""; $nouveau_fichier = "Rien"; $idDemandeRemboursement = $_SESSION['idDemandeRemboursement'] ?? '0'; if(!empty($_POST)) { define('TARGET', $_SESSION['cheminGed']); // Repertoire cible define('MAX_SIZE', 10000000); // Taille max en octets du fichier //var_dump($_SESSION['cheminGed']); $tabExt = array("bmp", "gif", "jpeg", "jpg", "pdf", "png"); // Extensions autorisees // Variables $extension = ''; if( !is_dir(TARGET) ) { if( !mkdir(TARGET, 0755) ) { $message = 'Erreur : le répertoire cible ne peut-être créé ! Vérifiez que vous diposiez des droits suffisants pour le faire ou créez le manuellement !'; } } // On verifie si le champ est rempli if( !empty($_FILES['fichier_upload']['name']) ) { // Recuperation de l'extension du fichier $extension = pathinfo($_FILES['fichier_upload']['name'], PATHINFO_EXTENSION); // On verifie l'extension du fichier if(in_array(strtolower($extension), $tabExt)) { $message = $_FILES['fichier_upload']['size']; // On verifie les dimensions et taille du fichier if($_FILES['fichier_upload']['size'] <= MAX_SIZE) { $taille = $_FILES['fichier_upload']['size']; // Parcours du tableau d'erreurs if(isset($_FILES['fichier_upload']['error']) && UPLOAD_ERR_OK === $_FILES['fichier_upload']['error']) { // On renomme le fichier $nomOrigine = $_FILES['fichier_upload']['name']; $nouveau_fichier = dateJourSql()."_".uniqid().".".$extension; // Si c'est OK, on teste l'upload if(move_uploaded_file($_FILES['fichier_upload']['tmp_name'], TARGET.$nouveau_fichier)) { $message = 'Chargé avec succès / Uploaded successfully'; // on va envoyer dans la base de données $this->ged->enregistrergedRD($idDemandeRemboursement, $nomOrigine, $nouveau_fichier, $taille); } else { // Sinon on affiche une erreur systeme $message = 'Problème lors du chargement !'; } } else { $message = 'Une erreur interne a empêché le chargement'; } } else { $message .= $_FILES['fichier_upload']['size']." Erreur dans les dimensions du fichier !"; // $message = 'Erreur dans les dimensions du fichier !'; } } else { // Sinon on affiche une erreur pour l'extension $message = 'Extension du fichier est incorrecte !'; } } else { // Sinon on affiche une erreur pour le champ vide $message = 'Veuillez sélectionner un fichier SVP! / Please select a file!'; } // fin upload } $msgErreurGed = $message; $benficiaires = $this->remboursement->getBeneficaire(); $demande = $this->remboursement->getDemandeRemboursement($idDemandeRemboursement); $geds = $this->ged->getgedRd(); unset($_FILES['fichier_upload']); $this->genererVue(array('benficiaires' => $benficiaires, 'msgErreurGed' => $msgErreurGed, 'demande' => $demande, 'geds' => $geds)); } }