| 12
 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
 
 | <?php
require_once('administrateur.class.php');
require_once('PreparationREQAdministrateur.php');
session_start();
$Admin = unserialize($_SESSION['Objet']);
require_once (dirname(dirname(__FILE__)).'/MyPDO.php');
$PrepREQ = new PreparationREQAdministrateur(new MyPDO());
$retour = false;
print_r($Admin->ArrayProfil());
function nettoyerChaine($chaine) //afin de pouvoir renommer le fichier dans une syntaxe appropriée
{
	$caracteres = array(
			'À' => 'a', 'Á' => 'a', 'Â' => 'a', 'Ä' => 'a', 'à' => 'a', 'á' => 'a', 'â' => 'a', 'ä' => 'a', '@' => 'a',
			'È' => 'e', 'É' => 'e', 'Ê' => 'e', 'Ë' => 'e', 'è' => 'e', 'é' => 'e', 'ê' => 'e', 'ë' => 'e', '' => 'e',
			'Ì' => 'i', 'Í' => 'i', 'Î' => 'i', 'Ï' => 'i', 'ì' => 'i', 'í' => 'i', 'î' => 'i', 'ï' => 'i',
			'Ò' => 'o', 'Ó' => 'o', 'Ô' => 'o', 'Ö' => 'o', 'ò' => 'o', 'ó' => 'o', 'ô' => 'o', 'ö' => 'o',
			'Ù' => 'u', 'Ú' => 'u', 'Û' => 'u', 'Ü' => 'u', 'ù' => 'u', 'ú' => 'u', 'û' => 'u', 'ü' => 'u', 'µ' => 'u',
			'' => 'oe', '' => 'oe',
			'$' => 's');
 
	$chaine = strtr($chaine, $caracteres);
	$chaine = preg_replace('#[^A-Za-z0-9]+#', '-', $chaine);
	$chaine = trim($chaine, '-');
	$chaine = strtolower($chaine);
 
	return $chaine;
}
 
if (isset($_GET['uploadprofil']))
{
 
	if ($Admin->Modifier($_POST['Nom'], $_POST['Prenom'], $_POST['Tel'], $_POST['Email']))
	{
	$NewAdmin = new administrateur ($Admin->GetIdentifiants()['Login'], $Admin->GetIdentifiants()['MDP']);
	$_SESSION['Objet'] = serialize($NewAdmin);
	$retour = array (error => 0, gritter_titre => 'Mise à jour de votre profil', gritter_msg => 'Les modifications apportées à votre profil ont bien été prises en compte');
	}
	else
	{
	$retour = array (error => 1, gritter_titre=> 'Erreur lors de la modification', gritter_msg => 'La modification des informations de votre profil a échouée.<br>Contactez l\'administrateur du site.');
	}	
}
 
if (isset($_GET['uploadphotoprofil']))	
{	
	if ($PrepREQ->selectById($Admin->Arrayprofil()['ID']))
	{
		if ($_FILES['photoprofil']['error'] <= 0)
		{
			$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png' );	// Liste des extensions de fichier valides
			$extension_upload = strtolower(substr(strrchr($_FILES['photoprofil']['name'],'.') ,1)); //1. strrchr renvoie l'extension avec le point (« . »). 	//2. substr(chaine,1) ignore le premier caractère de chaine. 	//3. strtolower met l'extension en minuscules.
			if (in_array($extension_upload,$extensions_valides))
			{
				$titreImage = nettoyerChaine($Admin->ArrayProfil()['Nom'].'-'.$Admin->ArrayProfil()['Prenom']);
				$URLAlbum = 'PhotoProfil';
				$nom = "assets/img/{$URLAlbum}/{$titreImage}.{$extension_upload}";
				$resultat = move_uploaded_file($_FILES['photoprofil']['tmp_name'], dirname(dirname(getcwd())).'/'.$nom);
				if ($resultat)
				{
					if($Admin->UpdateInsertPhotoProfil($titreImage, $titreImage.'.'.$extension_upload))
					{
					$retour = array (error => 0, gritter_titre=> 'Succés lors de la modification', gritter_msg => 'La modification de votre photo de profil a été prise en compte' );
					}
					else
					{
					$retour = array (error => 1, gritter_titre=> 'Erreur lors de la modification', gritter_msg => 'Erreur dans la modification de la base de données.<br>Contactez l\'administrateur du site.');			
					}
				}
				else {$retour = array (error => 1, gritter_titre=> 'Erreur lors de la modification', gritter_msg => 'Une erreur s\'est produite lors de l\'envoi du fichier dans les dossiers du serveur .<br>Contactez l\'administrateur du site.');}	
 
			}
			else {$retour = array (error => 1, gritter_titre=> 'Erreur lors de la modification', gritter_msg => 'Extensions d\'images acceptées : .png, .jp(e)g, .gif');}
		}
		else {$retour = array (error => 1, gritter_titre=> 'Erreur lors de la modification', gritter_msg => $retour['gritter'].'Erreur dans l\'upload votre photo de profil.<br>Contactez l\'administrateur du site.');}
	}
else {$retour = array (error => 1, gritter_titre=> 'Erreur lors de la modification', gritter_msg => $retour['gritter'].'Vous n\'êtes pas connecté');}
}
 
header("Location: ../../profil.php?error=".$retour['error']."&gritter_titre=".$retour['gritter_titre']."&gritter_msg=".$retour['gritter_msg'].""); | 
Partager