Partage
  • Partager sur Facebook
  • Partager sur Twitter

Seul l'extension gif est reconnu ...

... et jpg, png ou encore jpeg ???

    27 février 2006 à 13:10:24

    C'est encore moi dsl de vous embêter avec ça mais voila le script que j'utilise pour uploader des images sur le serveur de Club-Internet :

    $poids_max = 1024000; // Poids max de l'image en octets (1Ko = 1024 octets)
    $repertoire = 'image/'; // Repertoire d'upload

    if (isset($_FILES['fichier']))
    {

    // On vérifit le type du fichier
    if ($_FILES['fichier']['type'] != 'image/gif' AND $_FILES['fichier']['type'] != 'image/jpeg' AND $_FILES['fichier']['type'] != 'image/jpg' AND $_FILES['fichier']['type'] != 'image/png')
    {
    $erreur = 'Le fichier doit être au format *.jpeg, *.gif ou *.png ou bien *.jpg.';
    }

    // On vérifit le poids de l'image
    elseif ($_FILES['fichier']['size'] > $poids_max)
    {
    $erreur = 'L\'image doit être inférieur à ' . $poids_max/1024 . 'Ko.';
    }

    // On vérifit si le répertoire d'upload existe
    elseif (!file_exists($repertoire))
    {
    $erreur = 'Erreur, le dossier d\'upload n\'existe pas.';
    }

    // Si il y a une erreur on l'affiche sinon on peut uploader
    if(isset($erreur))
    {
    echo '' . $erreur.'<br/><br/><a href="uploadImage.php">Retour</a><br/><br/>';
    }
    else
    {

    // On définit l'extention du fichier puis on le nomme par le timestamp actuel
    if ($_FILES['fichier']['type'] == 'image/jpeg') { $extention = '.jpeg'; }
    if ($_FILES['fichier']['type'] == 'image/jpg') { $extention = '.jpg'; }
    if ($_FILES['fichier']['type'] == 'image/png') { $extention = '.png'; }
    if ($_FILES['fichier']['type'] == 'image/gif') { $extention = '.gif'; }
    $nom_fichier = time().$extention;
    include("mysqlConnect.php");
    mysql_query("insert into url values ('', '".$nom_fichier."')");
    mysql_close();

    // On upload le fichier sur le serveur.
    if (move_uploaded_file($_FILES['fichier']['tmp_name'], $repertoire.$nom_fichier))
    {
    echo 'Votre image à été uploadée sur le serveur avec succes!<br/><br/><a href="creerProfil.php">Continuer</a>';
    }
    else
    {
    echo 'L\'image n\'a pas pu être uploadée sur le serveur.';
    }

    }

    }
    else
    {
    ?>

    <fieldset><legend>Enregistrer une image</legend>
    <form method="post" enctype="multipart/form-data">
    <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $poids_max; ?>">
    <input type="file" name="fichier"><br/><hr><br/>
    <input type="submit" value="Enregistrer">
    </form>
    </fieldset><br/><br/>
    <?php
    }


    Si vous pourriez m'aider à trouver la soluce ...

    Je vous remercie d'avance ^^
    • Partager sur Facebook
    • Partager sur Twitter
      27 février 2006 à 13:20:19

      Remplace les AND par OR

      if ($_FILES['fichier']['type'] != 'image/gif' OR $_FILES['fichier']['type'] != 'image/jpeg' OR $_FILES['fichier']['type'] != 'image/jpg' OR $_FILES['fichier']['type'] != 'image/png')
      • Partager sur Facebook
      • Partager sur Twitter
      Erreur PDO - Installation Wamp - Docs PHP et MYSQL.
        27 février 2006 à 13:45:26

        salut

        $array_extension = array('gif');
        if(in_array(substr($_FILES['fichier']['type']), -3), $array_extension)
        echo 'extension existe';
        else
        echo addslashes("extension n'existe pas");

        • Partager sur Facebook
        • Partager sur Twitter
          27 février 2006 à 15:00:01

          substr($_FILES['fichier']['type']), -3) est une solution à chier pour trouver l'extension d'un fichier...

          Si l'extension est .jpeg, ça ne fonctionne pas.
          .js non plus, et plein d'autres extensions à autre nombre de lettres que 3.
          • Partager sur Facebook
          • Partager sur Twitter
            27 février 2006 à 16:00:37

            Citation : pepe

            substr($_FILES['fichier']['type']), -3) est une solution à chier pour trouver l'extension d'un fichier...

            Si l'extension est .jpeg, ça ne fonctionne pas.
            .js non plus, et plein d'autres extensions à autre nombre de lettres que 3.


            il suffit d'alimenter le tableau par les extensions acceptées et préciser la position d'extraction.
            • Partager sur Facebook
            • Partager sur Twitter
              27 février 2006 à 16:51:13

              Citation : pepe

              substr($_FILES['fichier']['type']), -3) est une solution à chier pour trouver l'extension d'un fichier...

              Si l'extension est .jpeg, ça ne fonctionne pas.
              .js non plus, et plein d'autres extensions à autre nombre de lettres que 3.


              suffit de faire :
              substr($_FILES['fichier']['type']), strrpos('.',$_FILES['fichier']['type']),strlen($_FILES['fichier']['type']))
              • Partager sur Facebook
              • Partager sur Twitter

              Seul l'extension gif est reconnu ...

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown