Partage
  • Partager sur Facebook
  • Partager sur Twitter

Php7.3: problème de taille d'upload

    14 octobre 2021 à 21:40:30

    Bonsoir,

    Je gère le site d'une association depuis un moment, et un problème est survenu récemment: impossible d'envoyer des pièces jointes aux mails lorsqu'elles dépassent 1Mo (et j'avoue que je ne sais si ça marchait avant)! J'ai d'abord pensé à une limite dans le php.ini (le site est hébergé chez OVH avec l'hébergement Pro2014). J'ai la version 7.3 de Php. Je me suis connecté en SSH et en remontant au "homez.xxx", cela m'indique la version 5.4 de Php, comme indiqué ci-dessous:

    xxxxxx@ssh01.clusterxxx.gra.hosting.ovh.net (php/7.3/production/stable) ~ $ cd ../
    xxxxxx@ssh01.clusterxxx.gra.hosting.ovh.net (php/5.4/production/legacy) /homez.xxx $

    Est-ce que c'est possible que ça vienne de là?

    Au cas où, voici les codes que j'utilise:

    Le javascript:

    function envoiFich(num)
    {
        var progress = document.getElementById('progress');
        show('popup_name2');
        
        
        var form = new FormData();
        var file = myFile[num];
        document.getElementById('fichEnvoi').textContent = file.name + ' (' + (num+1) + '/' + pez2['name'].length + ')';
        form.append('pezh[]', file, file.name);
        
        var xhr = new XMLHttpRequest();
        xhr.open('POST', chemRep + 'upload.php', true);
                xhr.send(form);
                
                xhr.addEventListener('load', complete, false);
                xhr.addEventListener('error', faute, false);
                xhr.addEventListener('abort', cancelled, false);
                xhr.upload.addEventListener('progress', function(e) {
                    progress.value = e.loaded;
                    progress.max = e.total;
                });
                function complete()
                {
                    
                    num++;
                    if(num < pez2['name'].length)
                    {
                        envoiFich(num);
                    }
                    else
                    {
                        test();
                    }
                }
                function faute()
                {
                    alert('Un problème est survenu en téléchargeant un fichier!');
                }
                function cancelled()
                {
                    alert('Annulé');
                }
    }

    et celui de upload.php:

    if(isset($_POST['sup']))
    {
    }
    
    else
    {
    
        $nom = str_to_noaccent(($_FILES['piece']['name'][0]));
        move_uploaded_file($_FILES['piece']['tmp_name'][0], 'up/'. $nom);
    }
    

    Merci de vos pistes!



    -
    Edité par beru002 14 octobre 2021 à 22:39:20

    • Partager sur Facebook
    • Partager sur Twitter
      15 octobre 2021 à 1:22:52

      Pour être sûr, fais : "Créez un script .php contenant uniquement le code <?php phpinfo(); ?>. Vous devrez le mettre en ligne sur votre espace de stockage, puis l'appeler en accédant à son adresse URL complète."

      Je pense que ta version PHP d'OVH est la 7. Vérifie pour isoler le problème.

      Source : https://docs.ovh.com/fr/hosting/configurer-le-php-sur-son-hebergement-web-mutu-2014/

      • Partager sur Facebook
      • Partager sur Twitter
        15 octobre 2021 à 6:48:55

        Bonjour,

        En effet, phpinfo() me renvoie bien la version 7.3...

        Un problème dans le code, du coup?

        • Partager sur Facebook
        • Partager sur Twitter
          15 octobre 2021 à 17:08:59

          Bonjour,

          Regarde le paramètre de la taille max d'un fichier uploadé soit dans le fichier php.ini soit avec le code :

          <?php echo ini_get("upload_max_filesize"); ?>


          https://www.php.net/manual/fr/function.ini-get.php

          A+

          • Partager sur Facebook
          • Partager sur Twitter
            15 octobre 2021 à 17:17:07

            Tu fais des tests quelque part des $_FILES['piece']['error'][X] ?

            Pareil, visiblement il n'y en a pas sur le move_uploaded_file non plus :/

            • Partager sur Facebook
            • Partager sur Twitter
              18 octobre 2021 à 21:35:06

              Bonsoir,

              Désolé pour le temps! Alors le upload_max_filesize me renvoie "128M".

              Les fichiers n'ont pas d'erreur en soi, je pense, car une image qui fait plus de 1Mo ne passe pas, et il suffit que je la diminue, et elle passe, donc ce n'est pas une histoire de fichier corrompu, si c'est ce à quoi tu pensais, Julp.

              Peut-être que j'essayerai du boulot... Avec la fibre! Peut-être qu'il peut s'agir du temps d'exécution? Qui est pourtant à 165...

              • Partager sur Facebook
              • Partager sur Twitter
                19 octobre 2021 à 7:52:41

                Il y a un autre paramètre à vérifier qui est :

                post_max_size

                A+

                • Partager sur Facebook
                • Partager sur Twitter
                  20 octobre 2021 à 20:37:04

                  Bonsoir,

                  post_max_size est à 130M...

                  Je viens d'effectuer un test d'envoi... qui a fonctionné! Un pièce jointe de 3Mo, qui a mis 2'23 à partir... Ce qui me fait penser que c'est visiblement un temps d'exécution trop long qui fait planter les envois!

                  • Partager sur Facebook
                  • Partager sur Twitter

                  Php7.3: problème de taille d'upload

                  × 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