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 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
| function redimensionner_physique($largeur_maximum,$hauteur_maximum,$taille,$photo_tmp,$photo,&$erreur,&$photo_miniature){
$extensions_acceptees = array('image/png','image/gif','image/jpeg');
@$information_image = getimagesize($photo_tmp);
if($taille == 0){
$erreur = 'Vous n\'avez choisis aucun fichier.';
return $erreur;
}
elseif($taille > 1048576){
$erreur = 'Votre image pèse plus d\'1 mo.';
return $erreur;
}
elseif(!in_array($information_image['mime'],$extensions_acceptees)){
$erreur = 'L\'extension de votre image n\'est pas correct. Les extensions acceptées sont png, gif, jpeg et jpg.';
}
elseif(substr_count($photo,'.') >= 2){
$erreur = 'Le nom de la photo envoyé ne peut contenir de "."';
}
else{
if($information_image['mime'] == 'image/gif'){
$photo_intermediaire = imagecreatefromgif($photo_tmp);
}
elseif($information_image['mime'] == 'image/png'){
$photo_intermediaire = imagecreatefrompng($photo_tmp);
}
else{
$photo_intermediaire = imagecreatefromjpeg($photo_tmp);
}
$reduction = (($largeur_maximum * 100)/$information_image[0]);
$hauteur = (($information_image[1] * $reduction)/100);
if($hauteur > $hauteur_maximum){
$reduction = (($hauteur_maximum * 100)/$information_image[1]);
$largeur = (($information_image[0] * $reduction)/100);
$photo_miniature = imagecreatetruecolor($largeur,$hauteur_maximum);
imagecopyresampled($photo_miniature,$photo_intermediaire,0,0,0,0,$largeur,$hauteur_maximum,$information_image[0],$information_image[1]);
return $photo_miniature;
}
else{
$reduction = (($largeur_maximum * 100)/$information_image[0]);
$photo_miniature = imagecreatetruecolor($largeur_maximum,$hauteur);
imagecopyresampled($photo_miniature,$photo_intermediaire,0,0,0,0,$largeur_maximum,$hauteur,$information_image[0],$information_image[1]);
return $photo_miniature;
}
}
}
if(isset($_POST['envoyer'])){
$largeur_maximum = 200;
$hauteur_maximum = 300;
$taille = $_FILES['photo_profil']['size'];
$photo_tmp = $_FILES['photo_profil']['tmp_name'];
$photo = $_FILES['photo_profil']['name'];
redimensionner_physique($largeur_maximum,$hauteur_maximum,$taille,$photo_tmp,$photo,$erreur,$photo_miniature);
if(!empty($erreur)){
echo '
<br />
<div id="erreur">
'.$erreur.'
</div>';
}
else{
mysql_query('UPDATE SET Photo_profil ="'.$photo_miniature.'" WHERE Pseudo="'.$compte_utilise.'"');
echo '<img src="'.$photo_miniature.'">';
}
} |
Partager