Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/02/2007, 10h45   #1
Responsable Perl et Outils

 
Avatar de djibril
 
Homme
Inscription : avril 2004
Messages : 9 375
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 9 375
Points : 13 744
Points : 13 744
Par défaut [Upload] upload Warning: POST

Salut à tous,
Problème recurrent je sais, mais lorsque que je fais un upload en php, j'obtient ce message :
Citation:
Warning: POST Content-Length of 25727361 bytes exceeds the limit of 8388608 bytes in Unknown on line 0

Warning: Unknown(): Cannot send session cache limiter - headers already sent in Unknown on line 0
Je voudrais savoir si c'est possible de capturer ce message afin de mettre un message plus clair aux utilisateurs comme quoi leur fichier excede de taille max.

Je ne peux pas modifier le php.ini, et ne peut pas le faire en perl car je suis sur un serveur que je ne gere pas du tout.

j'ai beau mettre
Code html :
<input type="hidden" name="MAX_FILE_SIZE" value="500000" />
mais ça ne donne rien.
et de toute façon, le script php plante avant même qu'il ne commence à lire la premiere ligne de mon upload.php donc $_FILES['userfile']['error'] est inutilisable.

Merci, j'attends votre aide
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!!
Lisez les règles du forum Perl.

Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles
djibril est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 11h20   #2
Membre régulier
 
Avatar de csbilouze
 
Inscription : janvier 2005
Messages : 79
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2005
Messages : 79
Points : 93
Points : 93
Envoyer un message via MSN à csbilouze
salut,
tu obtiens cette erreur a chaque fois ou que quand le fichier est trop voloumineux?

peux tu copier/coller ton formulaire complet stp

merci ++
csbilouze est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 11h31   #3
Responsable Perl et Outils

 
Avatar de djibril
 
Homme
Inscription : avril 2004
Messages : 9 375
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 9 375
Points : 13 744
Points : 13 744
volumineux biensur.
C'est dû au fait que je depasse les 8 Mo autorisé. Donc c'est normal. Mais je voulais savoir comment faire pour afficher un message propre aux users s'ils depassent la taille de 8 Mo.
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!!
Lisez les règles du forum Perl.

Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles
djibril est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 11h48   #4
Membre régulier
 
Avatar de csbilouze
 
Inscription : janvier 2005
Messages : 79
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2005
Messages : 79
Points : 93
Points : 93
Envoyer un message via MSN à csbilouze
et peux tu utiliser quelquechoses du genre:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
 
$TailleFichier=$_FILES['userfile']['size'];
 
if($TailleFichier<8388608){
 
  // on continue le script
 
  }
  else{
 
    echo "Votre fichier est trop volumineux";
 
    }
csbilouze est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 12h05   #5
Responsable Perl et Outils

 
Avatar de djibril
 
Homme
Inscription : avril 2004
Messages : 9 375
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 9 375
Points : 13 744
Points : 13 744
ça ne marche pas :
Citation:
et de toute façon, le script php plante avant même qu'il ne commence à lire la premiere ligne de mon upload.php donc $_FILES['userfile']['error'] est inutilisable.
Je pense que lorsque le script php d'upload est appele, il commence d'abord par telecharger dans le repertoire temporaire designé par apache avant même de lire le script php. et des que la taille est trop grande, ça plante.
Du coup, il ne connait plus mes variable envoyé par post ou get
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!!
Lisez les règles du forum Perl.

Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles
djibril est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 12h15   #6
Responsable Perl et Outils

 
Avatar de djibril
 
Homme
Inscription : avril 2004
Messages : 9 375
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 9 375
Points : 13 744
Points : 13 744
j'avais essayer ton exemple avec la taille, etc, mais j'ai ceci :
Code :
Notice: Undefined index: fichier in c:\program files\easyphp1-8\www\proteome\upload.php on line 9
sur mon easyphp
et sur le serveur ou je dois le mettre, j'ai ceci :
Code :
1
2
3
Warning: POST Content-Length of 25727260 bytes exceeds the limit of 8388608 bytes in Unknown on line 0
 
Warning: Unknown(): Cannot send session cache limiter - headers already sent in Unknown on line 0
en essayant :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
$TailleFichier=$_FILES['fichier ']['size'];
 
if($TailleFichier<8388608){
 
  // on continue le script
 
  }
  else{
 
    echo "Votre fichier est trop volumineux";
 
    }
Donc le fait que ça plante avant fait qui transfere plus rien
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!!
Lisez les règles du forum Perl.

Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles
djibril est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 12h40   #7
Membre régulier
 
Avatar de csbilouze
 
Inscription : janvier 2005
Messages : 79
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2005
Messages : 79
Points : 93
Points : 93
Envoyer un message via MSN à csbilouze
alors ,

apres quelques recherches je suis peut etre sur quelquechose

il existe la fonction register_shutdown_function(chaine fonction), c'est un script qui est executé en dernier recours lors d erreur de timout ou annulation utilisateur par exemeple.

Code :
1
2
3
4
5
6
7
8
 
function ErreurUpload(){
 
  echo"Votre fichier est trop volumineux.";
 
  }
 
register_shutdown_function("ErreurUpload");
edit: désolé poue l erreur d ecriture c'est pas ca $TailleFichier=$_FILES['fichier ']['size']; mais ca $TailleFichier=$_FILES['userfile']['size'];
csbilouze est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 13h00   #8
Responsable Perl et Outils

 
Avatar de djibril
 
Homme
Inscription : avril 2004
Messages : 9 375
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 9 375
Points : 13 744
Points : 13 744
$TailleFichier=$_FILES['userfile']['size']; => c toi qui met ce que tu veux à la place de userfile car il correspond à ton name dans ton code html au niveau du input de type file
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!!
Lisez les règles du forum Perl.

Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles
djibril est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 13h04   #9
Membre régulier
 
Avatar de csbilouze
 
Inscription : janvier 2005
Messages : 79
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2005
Messages : 79
Points : 93
Points : 93
Envoyer un message via MSN à csbilouze
je sais lol c'est le repport en haut qui m a induit en erreur lol

Citation:
Notice: Undefined index: fichier in c:\program files\easyphp1-8\www\proteome\upload.php on line 9
qu est ce que ca donne pour register_shutdown_function()?
csbilouze est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 13h05   #10
Responsable Perl et Outils

 
Avatar de djibril
 
Homme
Inscription : avril 2004
Messages : 9 375
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 9 375
Points : 13 744
Points : 13 744
j'ai bien le message, mais mon souci, c que les warning s'affiche toujours, et c tres moche.
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!!
Lisez les règles du forum Perl.

Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles
djibril est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 13h08   #11
Membre régulier
 
Avatar de csbilouze
 
Inscription : janvier 2005
Messages : 79
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2005
Messages : 79
Points : 93
Points : 93
Envoyer un message via MSN à csbilouze
tu peux essayer d y mettre la fonction error_reporting(entier niveau)

pour ta page upload.php tu mets :

Code :
1
2
3
4
5
 
error_reporting(error_reporting(0)|1);
 
//php par default est sur 1 OR 2 OR 4 ce qui renvoie errors, Warning et 
//parser error
essai avec ca mais error_reporting devra etre mieux configurer je pense
csbilouze est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 13h14   #12
Membre éprouvé
 
Inscription : février 2004
Messages : 456
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 456
Points : 428
Points : 428
Salut,

Citation:
Envoyé par djibril
j'ai bien le message, mais mon souci, c que les warning s'affiche toujours, et c tres moche.
Pas sûr que ca marche mais à la place d'afficher le message tu pourrais faire une redirection vers une autre page
billoum est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 13h28   #13
Responsable Perl et Outils

 
Avatar de djibril
 
Homme
Inscription : avril 2004
Messages : 9 375
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 9 375
Points : 13 744
Points : 13 744
j'ai essayé ça : error_reporting(0);
ça desactive tout rapport d'erreur, ça marche bien sur mon easyphp mais pas sur le serveur en question, y a toujours les warning.
Code :
1
2
3
Warning: POST Content-Length of 25707186 bytes exceeds the limit of 8388608 bytes in Unknown on line 0
 
Warning: Unknown(): Cannot send session cache limiter - headers already sent in Unknown on line 0
Hic sur easyphp
normalement, je fais une redirection à la fin de mon script en cas d'erreur (mais j'avais certain parametre qui sont pas envoyé ).
Bon sinon j'ai contourné le probleme avec un lien vers la page precedente en javascript et c ok.
mais ça arrange rien sur le serveur, toujours des warning
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!!
Lisez les règles du forum Perl.

Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles
djibril est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 13h33   #14
Responsable Perl et Outils

 
Avatar de djibril
 
Homme
Inscription : avril 2004
Messages : 9 375
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 9 375
Points : 13 744
Points : 13 744
Citation:
Envoyé par billoum
Salut,



Pas sûr que ca marche mais à la place d'afficher le message tu pourrais faire une redirection vers une autre page
c'est ce que je faisait et tu as ceci :

Citation:
Warning: POST Content-Length of 25727271 bytes exceeds the limit of 8388608 bytes in Unknown on line 0

Warning: Unknown(): Cannot send session cache limiter - headers already sent in Unknown on line 0

Warning: Cannot modify header information - headers already sent in xxxxxxxxx/upload.php on line 58
Normal vu qu'il plante des la ligne 0
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!!
Lisez les règles du forum Perl.

Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles
djibril est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 13h52   #15
Membre éprouvé
 
Inscription : février 2004
Messages : 456
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 456
Points : 428
Points : 428
En fait, j'avais compris que la fonction était appelé avant que ca plante, donc je me disais qu'il y avait ptêt moyen de changer de page juste avant l'affichage de l'erreur..
Code php :
1
2
3
4
5
6
7
8
9
10
 
 
function ErreurUpload(){
 
  header();
 die();
 
  }
 
register_shutdown_function("ErreurUpload");
billoum est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 14h23   #16
Membre régulier
 
Avatar de csbilouze
 
Inscription : janvier 2005
Messages : 79
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2005
Messages : 79
Points : 93
Points : 93
Envoyer un message via MSN à csbilouze
au fait, quel est ton hebergeur?
csbilouze est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2007, 14h55   #17
Responsable Perl et Outils

 
Avatar de djibril
 
Homme
Inscription : avril 2004
Messages : 9 375
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 9 375
Points : 13 744
Points : 13 744
Citation:
Envoyé par csbilouze
au fait, quel est ton hebergeur?
c'est l'université, donc le CRI
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!!
Lisez les règles du forum Perl.

Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles
djibril est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2007, 18h48   #18
Membre régulier
 
Avatar de csbilouze
 
Inscription : janvier 2005
Messages : 79
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2005
Messages : 79
Points : 93
Points : 93
Envoyer un message via MSN à csbilouze
lol, et le cri ne t autorise pas a modifier le php.ini directement a la racine du serveur?
je t avoue que je cale un peu mais je vais y jeter un oeil comme il faut ce soir
csbilouze est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2007, 19h39   #19
Responsable Perl et Outils

 
Avatar de djibril
 
Homme
Inscription : avril 2004
Messages : 9 375
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 9 375
Points : 13 744
Points : 13 744
J'ai fais appelle au cri et il m'ont augmenté la taille de 8 à 30Mo, ça me suffira pour le moment.

Voilà
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!!
Lisez les règles du forum Perl.

Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles
djibril est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2009, 18h24   #20
Débutant
 
Avatar de afrodje
 
Homme Jérémy
Développeur Web
Inscription : octobre 2006
Messages : 1 094
Détails du profil
Informations personnelles :
Nom : Homme Jérémy
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Développeur Web
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 1 094
Points : 614
Points : 614
Bonjour,

Y-t-il pas une autre solution sans augmenter le paramètre dans le fichier .ini?

Merci.
__________________
Évènements dans le 06?
www.sortir06.com
afrodje est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h04.


 
 
 
 
Partenaires

Hébergement Web