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 :

Upload avec Firefox [PHP 5.3]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 9
    Par défaut Upload avec Firefox
    Bonjour à tous,

    je viens de suivre pas mal de post concernant l'upload de fichier en PHP. j'arrive à faire quelque chose d'assez simple qui fonctionne avec IE8 et Chrome 14... par contre, ça ne fonctionne pas avec firefox 7!!

    Voici le code html et le code php :

    html :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <form action="upload.php" method="post" enctype="multipart/form-data">
            <p>
                    Formulaire d'envoi de fichier :<br>
                    <input type="file" name="monfichier" /><br>
                    <input type="submit" value="Envoyer le fichier" />
            </p>
    </form>


    php (upload.php)
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    <?php
    $dossier = 'uploads/';
    $fichier = basename($_FILES['monfichier']['name']);
    $taille_maxi = 1000000000;
    $taille = filesize($_FILES['monfichier']['tmp_name']);
    $extensions = array('.png', '.gif', '.jpg', '.jpeg', '.zip', '.tar');
    $extension = strrchr($_FILES['monfichier']['name'], '.');
    //Début des vérifications de sécurité...
    if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
    {
         $erreur = 'Vous devez uploader un fichier de type png, gif, jpg, jpeg, txt ou doc...';
    }
    if($taille>$taille_maxi)
    {
         $erreur = 'Le fichier est trop gros...';
    }
    if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
    {
         //On formate le nom du fichier ici...
         $fichier = strtr($fichier,
              'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
              'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
         $fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
         if(move_uploaded_file($_FILES['monfichier']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
         {
              echo 'Upload effectué avec succès !';
         }
         else //Sinon (la fonction renvoie FALSE).
         {
              echo 'Echec de l\'upload !';
         }
    }
    else
    {
         echo $erreur;
    }
    ?>
    il n'y a rien dans les logs apache... bref, je reste perplexe!

    Si jamais vous avez une piste pour m'éclairer la lanterne, ça serait top!

    Merci!

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    fait un print_r($_FILES) au début de ton code pour voir

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 9
    Par défaut
    voici la réponse du print_r($_FILES);

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Array ( [monfichier] => Array ( [name] => deathguard.jpg [type] => image/jpeg [tmp_name] => /home/xbmc/tmp/phpw2y070 [error] => 0 [size] => 106865 ) ) Upload effectué avec succès !
    j'ai eu cela en utilisant chrome. sous Firefox, je n'ai aucun message qui apparait.

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    bizarre, ta page est valide w3c ?

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 9
    Par défaut
    non, il y a peu de chances pour qu'elle le soit :
    voici le code que j'ai mis :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    <?php
    header( 'content-type: text/html; charset=utf-8' );
    print_r($_FILES);
    $dossier = '/home/xbmc/Mariage/';
    $fichier = basename($_FILES['monfichier']['name']);
    $taille_maxi = 1000000000;
    $taille = filesize($_FILES['monfichier']['tmp_name']);
    $extensions = array('.png', '.gif', '.jpg', '.jpeg', '.zip', '.tar');
    $extension = strrchr($_FILES['monfichier']['name'], '.');
    //Début des vérifications de sécurité...
    if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
    {
         $erreur = 'Vous devez uploader un fichier de type png, gif, jpg, jpeg, txt ou doc...';
    }
    if($taille>$taille_maxi)
    {
         $erreur = 'Le fichier est trop gros...';
    }
    if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
    {
         //On formate le nom du fichier ici...
         $fichier = strtr($fichier,
              'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
              'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
         $fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
         if(move_uploaded_file($_FILES['monfichier']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
         {
              echo 'Upload effectué avec succès !';
         }
         else //Sinon (la fonction renvoie FALSE).
         {
              echo 'Echec de l\'upload !';
         }
    }
    else
    {
         echo $erreur;
    }
    ?>
    n'empêche que lorsque je tape directement la page upload.php, j'ai bien des erreurs =>normal vu qu'il n'a aucun fichier à uploader

    mais lorsque j'essaye d'uploader 14_darkholiday2.jpg, j'ai bien les infos du print_r($_FILES) sous chrome (Cf mon dernier post), mais rien n'apparait sous FF.

  6. #6
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    je parle plutôt de celle du formulaire

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Upload] Problème upload de gros fichiers avec Firefox
    Par the rootsm@n dans le forum Langage
    Réponses: 12
    Dernier message: 19/02/2006, 20h43
  2. Ecouter la radio avec Firefox
    Par Cian dans le forum Applications et environnements graphiques
    Réponses: 20
    Dernier message: 14/07/2005, 19h19
  3. Problème Site Web avec Firefox
    Par bodybug dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 23/01/2005, 23h48
  4. balise <img> dans un tableau avec firefox
    Par yannock dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 25/10/2004, 16h44
  5. url d'une page asp ou upload avec get
    Par taupin dans le forum ASP
    Réponses: 18
    Dernier message: 22/08/2003, 14h25

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