<?php
session_start();
//----------------------------
// DEFINITION DES CONSTANTES
//----------------------------
$target = 'dir_logos/'; // Repertoire cible
$extension =array('jpg','JPG','peg','PEG','gif','GIF','png','PNG');
$max_size = 1000000; // Taille max en octets du fichier
$width_max = 10000; // Largeur max de l'image en pixels
$height_max = 10000; // Hauteur max de l'image en pixels
//----------------------
// SCRIPT D'UPLOAD
//----------------------
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr">
<head>
<title>Choix du logo (jpg, png ou gif)</title>
<link rel="stylesheet" href="popup.css" type="text/css" />
<script type="text/javascript" src="ajax3.js" ></script>
</head>
<body >
<?php
$upload="";
if(!empty($_POST['posted'])) {
// On vérifie si le champ est rempli
if(!empty($_FILES['fichier']['name'])) {
// On vérifie l'extension du fichier
if(in_array(substr($_FILES['fichier']['name'], -3),$extension)){
// On récupère les dimensions du fichier
$infos_img = getimagesize($_FILES['fichier']['tmp_name']);
// On vérifie les dimensions et taille de l'image
if(($infos_img[0] <= $width_max) && ($infos_img[1] <= $height_max) && ($_FILES['fichier']['size'] <= $max_size)) {
// Si c'est OK, on uploade.
if(move_uploaded_file($_FILES['fichier']['tmp_name'],$target.$_FILES['fichier']['name'])) {
// On efface l'ancien choix s'il y a lieu et on stocke le nom du logo dans une variable de session.
$upload="ok";
if ((isset($_SESSION['nomlogo']))and($_SESSION['nomlogo']!="")) {
$src="dir_logos/".$_SESSION['nomlogo'];
unlink($src); }
$_SESSION['nomlogo']=$_FILES['fichier']['name']; }
else {
// Sinon on affiche une erreur système
echo '<b>Problème lors de l\'upload !</b><br /><br /><b>', $_FILES['fichier']['error'], '</b><br /><br />';
}
} else {
// Sinon on affiche une erreur pour les dimensions et taille de l'image
echo '<b>Problème dans les dimensions ou taille de l\'image !</b><br/><br/>';
}
} else {
// Sinon on affiche une erreur pour l'extension
echo '<b>Ce type d\'image n\'est accepté!</b><br/><br/>';
}
} else {
// Sinon on affiche une erreur pour le champ vide
echo '<b>Le champ du formulaire est vide !</b><br /><br />';
}
}
?>
<form id="formlogo" enctype="multipart/form-data" action="popup.php" method="post">
<!-- On utilise un input type="file" -->
<input type="hidden" name="posted" value="1" />
<input class="aristochoixlogo" name="fichier" type="file" />
<input class="aristochoixlogo" type="submit" value="Voir" />
</form>
<?php
// Lorsque l'on a choisi, on fait apparaître l'image, son nom ainsi que le bouton de validation.
if($upload=="ok") {
$_SESSION['fait']=1;
?>
<div align="center">
<img alt="" src="dir_logos/<?php echo $_FILES['fichier']['name'];?>" width="100" height="100" /><br/>
<?php echo $_FILES['fichier']['name']; ?>
</div>
<!-- Après la validation la fenêtre popup disparaîtra et la fenêtre parent sera actualisée. -->
<form action="">
<textarea class="aristoinvisible" rows="1" cols="1" name="logoperso" ><?php echo $_FILES['fichier']['name'];?></textarea>
<input id="envoi3" type="submit" value="Valider" />
</form>
<?php
}
?>
</body>
</html>