Function minature dans l'upload jpg, gif, png

Signaler
Messages postés
228
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
27 novembre 2013
-
Messages postés
6
Date d'inscription
mercredi 15 mars 2006
Statut
Membre
Dernière intervention
6 avril 2008
-
bonjour ;-)
Voici mon soucis quand je charge une photo ou image gif , j'ai l'erreur suivante que cela ne fait pas partie de extension permisse(jpg;gif;png) j'aimerais une aide pour ressoudre mon petit soucis . merci

$_FILES['image']['name'];
if (@filesize(epure($_FILES['image']['tmp_name'])) > 100000)
    {
    echo "<script language=javascript> alert ('Photo 1 trop gros dois faire -100ko!');</script>";
    echo "<script language="javascript">location="add_annonce.php";</script>";
    exit;
    }
else
    {   
    $ext = strtolower(substr($_FILES['image']['name'],strrpos($_FILES['image']['name'], ".")+1));
    $valides = array("jpg","jpeg","JPG","GIF","gif","PNG","png");
    if(in_array($extention,array($ext,$valides)))
    {
move_uploaded_file($image, "images/".$_FILES['image']['name']."");
        $name_image ="images/".$_FILES['image']['name']."";
        switch($extention)
        {
        case 1 :
        $source = imagecreatefromgif($name_image);
        break;
        case 2 :
        $source = imagecreatefromjpeg($name_image);
        break;
        case 3 :
        $source = imagecreatefrompng($name_image);
         break;
        }   
        $largeur = 150; $hauteur= 125;
        $largeur_source = imagesx($source);
        $hauteur_source = imagesy($source);
        if($hauteur_source>$largeur_source)
        {        $l $hauteur; $h $largeur;        $lSrc $hauteur_source; $hSrc $largeur_source;
        }else{        $l $largeur; $h $hauteur;        $lSrc $largeur_source; $hSrc $hauteur_source;
        }   
        $destination = imagecreatetruecolor($l, $h);
        $largeur_destination = imagesx($destination);
        $hauteur_destination = imagesy($destination);
        imagecopyresampled($destination, $source, 0, 0, 0, 0, $largeur_destination, $hauteur_destination, $largeur_source, $hauteur_source);
        $textcolor = imagecolorallocate($destination, 255, 255, 255);
        imagestring($destination, 4, 5, $h-25, "Hesbaye-Immo", $textcolor);
        $image_mini = strtr(''.$_FILES['image']['name'].'', " ","%20");
        imagegif ($destination,'images/mini/'.$_FILES['image']['name'].'');
        imagejpeg ($destination,'images/mini/'.$_FILES['image']['name'].'');
        imagepng ($destination,'images/mini/'.$_FILES['image']['name'].'');               
        }
    else
        {
        echo "<script language=javascript> alert ('Uniquement format, jpg, jpeg, JPG,GIF,gif,PNG,png!');</script>"; cela bloc ici
        exit();
        }
        }
 

Merci de votre aide     

3 réponses

Messages postés
75
Date d'inscription
mardi 20 novembre 2007
Statut
Membre
Dernière intervention
9 janvier 2009
2
Salut,

Ton problème n'est vraiment pas clair.

Bonne chance
Messages postés
2090
Date d'inscription
jeudi 16 septembre 2004
Statut
Membre
Dernière intervention
18 novembre 2021
1
Relit ça :
    http://www.php.net/manual/fr/function.in-array.php
et ça :
    http://www.php.net/manual/fr/function.array-search.php

Puis change

    if(in_array($extention,array($ext,$valides)))
Par
    if($extension = array_search($ext, $valides))

Flachy Joe

Ta vie t'est prêtée, fais en un cadeau.
Messages postés
6
Date d'inscription
mercredi 15 mars 2006
Statut
Membre
Dernière intervention
6 avril 2008

Salut,
Regarde ce code, je pense qu'il pourra d'aider.

        $content_dir = '../'.$dossier.'/' ; // dossier où sera déplacé le fichier
        $tmp_file = $_FILES['fichier']['tmp_name'];
        if( !is_uploaded_file($tmp_file) )
        {
            exit("Le fichier est introuvable");
        }
    
        // on vérifie maintenant l'extension
        $type_file = $_FILES['fichier']['type'];
    
        if( !strstr($type_file, 'jpg') && !strstr($type_file, 'jpeg') )
        {
            exit("Le fichier n'est pas une image jpeg");
        }
    
        // on copie le fichier dans le dossier de destination
        $name_file = $_FILES['fichier']['name'];
        if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
        {
            exit("Impossible de copier le fichier dans $content_dir");
        }

Bonne soirée