a
This commit is contained in:
130
Controleur/ControleurImportassure.php
Normal file
130
Controleur/ControleurImportassure.php
Normal file
@@ -0,0 +1,130 @@
|
||||
<?php
|
||||
|
||||
require_once 'Framework/Controleur.php';
|
||||
require_once 'Modele/Police.php';
|
||||
require_once 'Modele/Beneficiaire.php';
|
||||
require_once 'Modele/Menuvueutilisateur.php';
|
||||
require_once 'Framework/Localisation.php';
|
||||
|
||||
class ControleurImportassure extends Controleur {
|
||||
private $police;
|
||||
private $beneficiaire;
|
||||
|
||||
public function __construct() {
|
||||
$this->menuvue = new Menuvueutilisateur();
|
||||
$this->menuvue->getMenuVue("Importassure");
|
||||
|
||||
$this->police = new Police();
|
||||
$this->beneficiaire = new Beneficiaire();
|
||||
}
|
||||
|
||||
public function index($msgErreur=null)
|
||||
{
|
||||
// DEBUT CHARGELENT FICHIER EXCEL A IMPORTER
|
||||
$message = "";
|
||||
|
||||
$nouveau_fichier = "Rien";
|
||||
|
||||
if(!empty($_POST))
|
||||
{
|
||||
define('TARGET', 'Temp/import/'); // Repertoire cible
|
||||
define('MAX_SIZE', 10000000); // Taille max en octets du fichier
|
||||
|
||||
// Tableaux de donnees
|
||||
// ".avi", ".bmp", ".doc", ".docx", ".gif", ".jpeg", "jpg", "jpe", ".mkv", ".mp3", ".pdf", ".png", ".pps", ".xls", ".xlsx", ".wav"
|
||||
// $tabExt = array('jpg','png','jpeg'); // Extensions autorisees
|
||||
|
||||
$tabExt = array("xls", "xlsx"); // 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';
|
||||
$message = _('Chargé avec succès');
|
||||
|
||||
// on va envoyer dans la base de données
|
||||
|
||||
$this->beneficiaire->enregistrerparamimportassure($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
|
||||
}
|
||||
|
||||
$msgErreur = $message;
|
||||
|
||||
unset($_FILES['fichier_upload']);
|
||||
// FIN CHARGELENT FICHIER EXCEL A IMPORTER
|
||||
|
||||
$idPolice = $_SESSION['idPolice_C'];
|
||||
$this->police->getContextePoliceId($idPolice);
|
||||
$police = $this->police->getPoliceId($idPolice);
|
||||
|
||||
$fichierimport = $this->beneficiaire->getFichierImport();
|
||||
|
||||
$this->genererVue(array('police' => $police, 'msgErreur' => $msgErreur, 'fichierimport' => $fichierimport,
|
||||
'nouveau_fichier' => $nouveau_fichier));
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user