Bonjour, j'ai un souci avec mes script PHP d'upload de fichier sur un VPS debian Jessie.
Même avec ce petit script j'obtiens toujours cette erreur 3 (UPLOAD_ERR_PARTIAL)

<?php
  if(isset($_FILES['test']))
  {
      var_dump($_FILES);
  }
?>
<html>
    <head>
        <title>test</title>
    </head>
    <body>
        <form method="POST" enctype="multipart/form-data">
              test :  <input type="file" name="test">
            <button type="submit">envoyer</button>
        </form>
    </body>
</html>

Je n'ai pas de soucis avec mes autres VPS, même sous Jessie et après des heures de recherches, je ne trouve vraiment pas la solution et je m'en remet à vous.

Déjà essayé de modifier post max size, taille de fichier, execution time, etc ...

PHP Version : PHP 5.6.13-0+deb8u1 (cli) (built: Sep 7 2015 13:38:37)

Merci d'avance,

15 réponses


ADessi
Auteur
Réponse acceptée

Bon j'ai enfin trouvé mon erreur, lors de l'install d'apache j'ai utilisé la librarie libapache2-mod-php5filter au lieu de la libapache2-mod-php5 ... Pourquoi ??? je ne sais pas comment j'ai fait ça, je connaissais même pas cette library filter .... Mais voilà si ça vous arrive ... au cas où ...

Merci à tous ceux qui m'ont répondu ... vous m'avez aider à voir d'une autre manière mon problème ... et puis je suis allé marcher 2 heures et en rentrant il ne m'a fallu que 10min pour trouvé mon erreur ...

Salut,

As-tu essayé d'ajouter ceci à ton script d'upload: header ("Connection: close"); ?

ADessi
Auteur

Oui j'ai déjà essayé, rien n'y fait.

ADessi
Auteur

C'est soit il y'a un bug, soit un module que j'ai oublié ( apache ou php), mais je ne sais pas lequel ...

Tu utilises un Framework style CakePHP, Laravel, Symphony... ?

ADessi
Auteur

j'utilise Laravel, mais j'ai fait un test dans un autre virtualhost, dans un repertoire à part sur le serveur, ça ne fonctionne pas quand même. Je suis quasi sur que cela viens de la config du serveur. Car j'ai un autre VPS sous debian Jessie, juste que PHP est dans une version juste en dessous, 5.6.9 avec le même site qui tourne dessus pour les tests, et je n'ai pas eu de problème. Vraiment c'est la première fois que je sèche, je vais lorgner du côté de Docker je crois .... car les configs à répétitions ça me fatigue, j'ai du oublier quelque chose, mais le pb c'est que je ne vois vraiment pas quoi !

ADessi
Auteur

Je précise que je ne fait plus que les tests avec ce petit script écrit vite fait ...

le var_dump me renvoi toujours ... quoi que je fasse ( type de fichier, poids du fichier, nom court, nom long ) avec max_execution_time de 360000, toujours pareil

array (size=1)
  'test' => 
    array (size=5)
      'name' => string 'Capture du 2015-06-10 10:13:28.png' (length=34)
      'type' => string '' (length=0)
      'tmp_name' => string '' (length=0)
      'error' => int 3
      'size' => int 0

J'en peux plus ... aidez moi forumers de grafikart, vous êtes mon dernier espoir ....

A partir de quelle taille ça bloque ?
à partir de combien de temps ?
ton répertoire /tmp est-il plein ?

ADessi
Auteur

le serveur je l'ai installé ce matin, il y'a apache, php, mysql ... tout fonctionne sauf l'upload de fichier .... donc le répertoire temp risque pas d'être plein ...

Par contre du coup j'avais pas essayé en dessous 6ko, mais un fichier de 5ko ça marche ... merci déjà pour la piste ...

Alors la réponse m'intéresse aussi car j'ai également mon serveur de dev sous Debian Jessie et je suis entrain de dev un projet sous Laravel dans lequel l'upload d'image sera important.
@ADessi Si jamais tu trouves une solution je suis preneur.

ADessi
Auteur

Si je trouve je mettrais ici la solution, mais il y'a de grandes chanches que cela ne t'arrives pas. J'ai du faire quelque chose qui ne vas pas, car c'est vraiment la première fois que m'arrives ce genre de trucs. Soit c'est un bug dans la dernière distribution debian, soi c'est moi ... je ne vois pas autrement ...

Beh j'attaque bientôt la partie admin du site avec l'upload d'images, je verrai bien. Tu utilises quelle lib pour l'upload ?

ADessi
Auteur

@betaWeb tu parles d'une library javascript/jquery ? si c'est le cas --> https://github.com/blueimp/jQuery-File-Upload

@ADessi merci pour ton retour.
Non je pensais que tu utilisais une lib côté PHP pour traiter les images (intervention par ex.).
Pour la lib JS je te conseille http://www.dropzonejs.com/ ;)

ADessi
Auteur

Non pour ça j'utilise la mienne toute pourit mais que je connais sur le bout des doigts ( je craquerais pour intervention quand j'aurais plus 5 projets en même temps ) ...
Pour dropzone je connais et je l'ai déjà tester, très bien aussi ... surtout plus facile à mettre en place pour du multi téléchargement.

Merci à toi, je file car j'ai quand même perdu une matinée sur cette betise ...