Php et "enctype=multipart/form-data" pb
nicolas
-
proff -
proff -
Bonjour,
J'utilisais un script PHP3 qui me permettait d'uploader des fichiers sur un serveur Linux (suse 6.3).
---> ce script marchait à merveille. ;-)
Pour des raisons de sécurité, j'ai effectué un upgrade du seveur : SuSE 7.1
---> ce script ne marche plus
* En fait lorsque que j 'effectue un "submit" de mon formulaire d'upload la page resultat n'est pas trouvée. (page cassée)
* J'ai remarqué que si je retire de mon tag <form> le parametre :"enctype=multipart/form-data" , la page resultat est de nouveau affichée mais du coup le fichier n'est pas uploader :(
Ma question est : quel est le fichier de config qui permet d'accepter des <form> avec le parametre "enctype=multipart/form-data" et est ce un probleme au niveau de php ou de la config de apache ?
Merci d'avance pourt les reponses qui me seront envoyés
Have a lot of fun with PHP ;)
nicolas
J'utilisais un script PHP3 qui me permettait d'uploader des fichiers sur un serveur Linux (suse 6.3).
---> ce script marchait à merveille. ;-)
Pour des raisons de sécurité, j'ai effectué un upgrade du seveur : SuSE 7.1
---> ce script ne marche plus
* En fait lorsque que j 'effectue un "submit" de mon formulaire d'upload la page resultat n'est pas trouvée. (page cassée)
* J'ai remarqué que si je retire de mon tag <form> le parametre :"enctype=multipart/form-data" , la page resultat est de nouveau affichée mais du coup le fichier n'est pas uploader :(
Ma question est : quel est le fichier de config qui permet d'accepter des <form> avec le parametre "enctype=multipart/form-data" et est ce un probleme au niveau de php ou de la config de apache ?
Merci d'avance pourt les reponses qui me seront envoyés
Have a lot of fun with PHP ;)
nicolas
A voir également:
- Enctype= multipart/form-data in php
- App data - Guide
- Navigation in private - Guide
- Aux in ✓ - Forum Enceintes / HiFi
- Peut-on brancher un casque sur une prise auxiliaire ? - Forum Casque et écouteurs
- Google form sans compte google ✓ - Forum Google Docs
5 réponses
Bonjour,
Il me semble que la variable $HTTP_POST_FILES est plus ou moins obsolète depuis php4.
A la place il y a une variable $_FILES qui remplit les mêmes fonctions.
Pour plus d'infos :
https://www.php.net/manual/fr/reserved.variables.files.php
Voilà.
Il me semble que la variable $HTTP_POST_FILES est plus ou moins obsolète depuis php4.
A la place il y a une variable $_FILES qui remplit les mêmes fonctions.
Pour plus d'infos :
https://www.php.net/manual/fr/reserved.variables.files.php
Voilà.
Il faut définir un répertoire physique où se situent les CGI:
ainsi que quelques propriétés élémentaires
p.ex:
ScriptAlias /cgi-bin/ "/home/www/cgi-bin/"
#
# "/usr/local/www/cgi-bin" should be changed to whatever your ScriptAliased
# CGI directory exists, if you have that configured.
#
<Directory "/home/www/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
Johan
ainsi que quelques propriétés élémentaires
p.ex:
ScriptAlias /cgi-bin/ "/home/www/cgi-bin/"
#
# "/usr/local/www/cgi-bin" should be changed to whatever your ScriptAliased
# CGI directory exists, if you have that configured.
#
<Directory "/home/www/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
Johan
salut tout le monde
j'arrive pas! j'y suis depuis hier soir !
Sur toutes les docs je vois la même chose et ça ne marche pas !
mon site est hébergé chez free, ils sont en php4.2.2
voila ma page(on ne peut plus simple!), elle s'appelle upload.php, elle se rappelle elle-même:
<head>
</head>
<body>
<?php
$chemin = get_cfg_var('upload_tmp_dir').$rename;
//$chemin contient "./nomFichier"
move_uploaded_file($HTTP_POST_FILES['fic']['tmp_name'],$chemin);
// mais $HTTP_POST_FILES['fic']['tmp_name'] ne renvoi rien !
?>
<form enctype="multipart/form-data" method="post" action="upload.php">
<input type="hidden" name="MAX_FILE_SIZE" value="20000">
<input name="fic" type="file" ><br>
<input name="rename" type="text"><br>
<input type="submit" value="Upload">
</form>
</body>
Quelqu'un sait pour quoi ça ne marche pas?
(Evidemment je ne fais des essais qu'avecdes fichiers inférieurs à 2000octets)
Grosse récompense à celui qui sait !
(elle arrivera sans doute avec un peu de retard: vous savez c que c'est avec La poste.. ;-)
j'arrive pas! j'y suis depuis hier soir !
Sur toutes les docs je vois la même chose et ça ne marche pas !
mon site est hébergé chez free, ils sont en php4.2.2
voila ma page(on ne peut plus simple!), elle s'appelle upload.php, elle se rappelle elle-même:
<head>
</head>
<body>
<?php
$chemin = get_cfg_var('upload_tmp_dir').$rename;
//$chemin contient "./nomFichier"
move_uploaded_file($HTTP_POST_FILES['fic']['tmp_name'],$chemin);
// mais $HTTP_POST_FILES['fic']['tmp_name'] ne renvoi rien !
?>
<form enctype="multipart/form-data" method="post" action="upload.php">
<input type="hidden" name="MAX_FILE_SIZE" value="20000">
<input name="fic" type="file" ><br>
<input name="rename" type="text"><br>
<input type="submit" value="Upload">
</form>
</body>
Quelqu'un sait pour quoi ça ne marche pas?
(Evidemment je ne fais des essais qu'avecdes fichiers inférieurs à 2000octets)
Grosse récompense à celui qui sait !
(elle arrivera sans doute avec un peu de retard: vous savez c que c'est avec La poste.. ;-)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
j'ai un souci similaire
sauf que pour moi le probleme ne se pose pas sur la version de PHP ou la version d'apache ou du systeme sur le quel il est installé mais se retrouve entre firefox et IE
en effet comme de coutume tout se passe bien sous firefox et en effet j'ai egalement un souci sous IE des que je met un formulaire avec un enctype='multipart/form-data' dedans ... je recherche depuis cematin des infos et de la literature sur ca sur le net .. et je trouve pas grand chose ...
il y a certainemetn une subtilité a faire sous IE pour que ca fonctionne mais je ne la connais pas encore ...
merci de vos reponses
sauf que pour moi le probleme ne se pose pas sur la version de PHP ou la version d'apache ou du systeme sur le quel il est installé mais se retrouve entre firefox et IE
en effet comme de coutume tout se passe bien sous firefox et en effet j'ai egalement un souci sous IE des que je met un formulaire avec un enctype='multipart/form-data' dedans ... je recherche depuis cematin des infos et de la literature sur ca sur le net .. et je trouve pas grand chose ...
il y a certainemetn une subtilité a faire sous IE pour que ca fonctionne mais je ne la connais pas encore ...
merci de vos reponses