1 2 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
|
if(isset($_FILES['image']['tmp_name']) && !empty($_FILES['image']['tmp_name']))
{
unset($erreur);
$extension_tolere = array('png', 'jpg', 'jpeg', 'gif', 'PNG', 'JPG', 'JPEG', 'GIF'); // extension d'images autorisées
$poids_max = 60000;
$dossier_upload = "../images/upload/";
list($width, $height, $type, $dim) = getimagesize($_FILES['image']['tmp_name']); // $dim donne directement height="$height" width="$width"
if($width > 450)
{
$erreur = 'Votre image est trop large, la largeur est limitée à 450px.';
}
elseif( !in_array( substr(strrchr($_FILES['image']['name'], '.'), 1), $extension_tolere ) ) // si l'extension n'est pas de type $extension_tolere
{
$erreur = 'Votre image doit-être de type png, gif, jpeg ou jpg.';
}
elseif( file_exists($_FILES['image']['tmp_name'])
&& filesize($_FILES['image']['tmp_name']) > $poids_max) // si son poids est supérieur à poids_max
{
$erreur = 'Votre image doit être inférieure à 60Ko !';
}
if(!isset($erreur))
{
$dest_img = basename($_FILES['image']['name']); // name signifie le nom de l'image sur la machine du visiteur
$dest_img = strtr($dest_img,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); // remplace les caractères spéciaux
$dest_img = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_img); // remplace les autres caractères spéciaux
move_uploaded_file($_FILES['image']['tmp_name'], $dossier_upload . $dest_img); // tmp_name chemin temporaire du fichier
$alt = explode('.', $dest_img); // $alt[0] contient le nom de l'image, alt[1] son extension
$chemin = $dossier_upload . $dest_img; // le chemin relatif depuis la page php
}
if(isset($erreur))
{
echo '<p>' . $erreur .'</p>';
}
} |
Partager