IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Problème de test sur la taille des fichiers


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Inscrit en
    Mai 2004
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 201
    Points : 140
    Points
    140
    Par défaut Problème de test sur la taille des fichiers
    salut tous le monde, voial je suis embeté car j'ai un petit prb que je n'arrive pas a resoudre, alors que c'est tout bete.

    je fais de l'upload de fichier, et je souhaite tester que le fichier que je veux uploader ne soit pas plus gros que la taille max.

    Pour ceci j'ai le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    if(!empty($_FILES["fichier"]["name"]))
    {
         $max_size= 8388608;     // Taille max en octets du fichier
         $nom_fichier=$_FILES['fichier']['name']; 
     
        if($_FILES['fichier']['size'] <= $max_size)
        {
             echo "ok pour l'upload";
             echo $_FILES['fichier']['size'];
        }
        else
        {
             echo "trop gros";
        }	
    }
    Alors quand je test ce petit bout de code, si le fichier que je renseigne dans le champs parcourir est plus petit que $max_size alors sa m'affiche ok pour l'upload si il est plus gros, sa ne m'affiche rien du tout, je ne comprend pas trop pourquoi car c'est une condition toute bête

    si quelqu'un à une idée
    La programmation, c'est tout un art

  2. #2
    Membre éprouvé Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Points : 952
    Points
    952
    Par défaut
    Dans le php.ini, il y a une directive qui indique qu'elle est la taille max d'un fichier en POST

    A mon avis, le problème doit se situer à ce niveau là

    Par défaut :
    post_max_size = 8M
    A vérifier
    Pierre
    1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
    2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
    3. Un code rapide c'est bien, un code maintenable c'est mieux
    ...

    Why was the font tag an orphan ? Because it didn't have a font-family.

  3. #3
    Membre habitué
    Inscrit en
    Mai 2004
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 201
    Points : 140
    Points
    140
    Par défaut
    La valeur post_max_size dans le php.ini à déja été changer, je l'avais fais en amont.

    Mais il y a vraiment un truc que je ne comprend pas
    La programmation, c'est tout un art

  4. #4
    Membre éprouvé Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Points : 952
    Points
    952
    Par défaut
    Es-tu sur que lors d'un envoi plus gros, on rentre bien dans le premier if ??

    Rajoute un echo, c'est un peu empirique mais c'est rapide
    Pierre
    1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
    2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
    3. Un code rapide c'est bien, un code maintenable c'est mieux
    ...

    Why was the font tag an orphan ? Because it didn't have a font-family.

  5. #5
    Membre habitué
    Inscrit en
    Mai 2004
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 201
    Points : 140
    Points
    140
    Par défaut
    en effet si le fichier est plus gros que 8mo je e rentre pas dans le premeir if, je ne comprend pas
    La programmation, c'est tout un art

  6. #6
    Membre éprouvé Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Points : 952
    Points
    952
    Par défaut
    Juste pour vérifier, si tu fais un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo ini_get('post_max_size') ;
    avant le if, tu as bien une valeur supérieure à 8M

    Tu peux également faire un var_dump($_FILES) pour vérifier le contenu.
    Pierre
    1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
    2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
    3. Un code rapide c'est bien, un code maintenable c'est mieux
    ...

    Why was the font tag an orphan ? Because it didn't have a font-family.

  7. #7
    Membre habitué
    Inscrit en
    Mai 2004
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 201
    Points : 140
    Points
    140
    Par défaut
    Si je fais un echo ini_get('post_max_size') ; avant le if, le resultat qui ressort est :

    Si le fichier uploader est plus petit que 8mo : il est écris 8M
    si le fichier est plus grand que 8mo, rien ne s'affiche

    C'est quand meme pas normal de ne pouvoir tenter d'uploader un fichier plus gros que 8mo et vu que c'est pas possible de gerer les erreurs
    La programmation, c'est tout un art

  8. #8
    Membre éprouvé Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Points : 952
    Points
    952
    Par défaut
    C'est bizarre car cela voudrait dire que si le fichier fait plus de 8M, il arrête le script !!

    Regarde aussi du coté de la directive upload_max_filesize que je n'ai pas cité tout à l'heure.

    Tu peux aussi regarder sur cette page, je n'ai pas lu les notes, peut-être trouveras tu une réponse
    Pierre
    1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
    2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
    3. Un code rapide c'est bien, un code maintenable c'est mieux
    ...

    Why was the font tag an orphan ? Because it didn't have a font-family.

Discussions similaires

  1. Problème sur la taille des boutons
    Par gamerounet dans le forum Composants graphiques
    Réponses: 3
    Dernier message: 20/03/2012, 16h36
  2. [WD12] Problème sur la taille des camemberts
    Par EriCstoFF dans le forum WinDev
    Réponses: 0
    Dernier message: 14/06/2010, 12h17
  3. VirtualBox, un effet sur la taille des fichiers?
    Par zaboug dans le forum VirtualBox
    Réponses: 6
    Dernier message: 27/05/2009, 12h15
  4. Un peu de lumière sur l'arborescence des fichiers de Linux
    Par Noki dans le forum Administration système
    Réponses: 6
    Dernier message: 07/04/2004, 16h16
  5. Probleme sur le Fields des fichiers Xmlgram
    Par Sandrine75 dans le forum XMLRAD
    Réponses: 4
    Dernier message: 20/03/2003, 17h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo