Salut,
Citation:
Envoyé par sabotage
il ne faut pas se fier au type/mime : peu surs, peu fiables
C'est totalement vrai... malheureusement.
Citation:
Envoyé par lassoya
je dois me fier à quoi ??
Tu peux utiliser la fonction getimagesize() qui retourne un tableau.
Tableau renvoyé par getimagesize :
- Array[0] = Largeur
- Array[1] = Hauteur
- Array[2] = Type
- Array[3] = width="xxx" height="xxx"
- Array[bits] = bits
- Array[channels] = channels
- Array[mime] = mime-type
L'index 2 est une constante parmi IMAGETYPE_XXX, indiquant le type de l'image.
Exemple de constantes representant le type d'un image :
IMAGETYPE_GIF image/gif
IMAGETYPE_JPEG image/jpeg
IMAGETYPE_PNG image/png
IMAGETYPE_BMP image/bmp
Exemple de code
Code:
1 2 3 4 5 6
| if(($nfo=@getimagesize($_FILES['photo']['tmp_name']))!==false) {
if(!in_array((int)$nfo[2],array(IMAGETYPE_GIF,IMAGETYPE_JPEG,IMAGETYPE_PNG,IMAGETYPE_BMP),true)) {
echo 'Seuls les fichiers GIF, JPG, PNG et BMP sont admis';
}
} |