[PHP / HTML] type="file" et récup des do
bubuche87
Messages postés
41
Date d'inscription
Statut
Membre
Dernière intervention
-
piou -
piou -
bonjour tout le monde, et désolé de venir vous embeter à nouveau, mais j'ai cherché partout sur le net, et je n'ai pas trouvé la réponse à ma question.
Voila: j'ai un formulaire avec un input type="file", et je voudrai pouvoir recuperer l'adresse contenu dans ce champ.
Ne récupérant que le nom du fichier final, je me suis penché sur la question, et j'ai découvert qu'il fallait rajouter enctype="text/plain" dans la balise form. Mais quand je l'ai fait, toutes les variables qui sont envoyées lors du submit sont vides! (et je dis bien toute, autant les posts que les get, je veux dire).
Je ne comprend pas pourquoi O_O
merci pour votre aide.
(je viens de faire un print_r sur le tableau $GLOBALS, et il me retourne ça:
Array
(
[GLOBALS] => Array
*RECURSION*
[HTTP_RAW_POST_DATA] => action=fusion
image[]=28315-41.jpg
image[]=279228_5418392.jpg
trans=
pos[]=0
pos[]=0
[_POST] => Array
(
)
[_GET] => Array
(
)
[_COOKIE] => Array
(
)
[_FILES] => Array
(
)
)
c'est à dire que je pourrai effectivement récupérer les données, mais que encore une fois je n'ai que le nom finale du fichier, pas le C:/documents an settings ect.)
merci ^^
Voila: j'ai un formulaire avec un input type="file", et je voudrai pouvoir recuperer l'adresse contenu dans ce champ.
Ne récupérant que le nom du fichier final, je me suis penché sur la question, et j'ai découvert qu'il fallait rajouter enctype="text/plain" dans la balise form. Mais quand je l'ai fait, toutes les variables qui sont envoyées lors du submit sont vides! (et je dis bien toute, autant les posts que les get, je veux dire).
Je ne comprend pas pourquoi O_O
merci pour votre aide.
(je viens de faire un print_r sur le tableau $GLOBALS, et il me retourne ça:
Array
(
[GLOBALS] => Array
*RECURSION*
[HTTP_RAW_POST_DATA] => action=fusion
image[]=28315-41.jpg
image[]=279228_5418392.jpg
trans=
pos[]=0
pos[]=0
[_POST] => Array
(
)
[_GET] => Array
(
)
[_COOKIE] => Array
(
)
[_FILES] => Array
(
)
)
c'est à dire que je pourrai effectivement récupérer les données, mais que encore une fois je n'ai que le nom finale du fichier, pas le C:/documents an settings ect.)
merci ^^
A voir également:
- [PHP / HTML] type="file" et récup des do
- .Bin file - Guide
- Host file - Guide
- .Dat file - Guide
- Editeur html - Télécharger - HTML
- Iso file - Guide
1 réponse
j'ai été confronté au même problème, j'ai trouvé une solution palliative, cependant cette dernière ne permet pas d'uploader le fichier mais seulement de récupérer l'adresse et le nom du fichier hôte. Pour ce faire on utilise une fonction javascript que l'on écrira dans les balises <head> de ta page :
<script type="text/javascript">
function modifierChemin()
{
document.forms['nom_du_form'].elements['cheminFichier'].value = document.forms['nom_du_form'].elements['nomFichier'].value;
}
</script>
puis dans ta balise form :
echo "<form action='mapage.php' method='post' name='nom_du_form'>";
echo "<p><input type='file' name='nomFichier' onChange='modifierChemin();' />";
echo "<input type='hidden' name='cheminFichier' value='' />";
echo "<input type='submit' name='valider' value='vailder' />";
echo "</form>";
il ne te reste plus qu'à récupérer dans ton autre page ('mapage.php') les données passées par la méthode POST :
echo $_POST['nomFichier'];
echo $_POST[''cheminFichier];
voila c'est la seule solution que j'ai trouvée. En espérant que ça t'aide
piou
<script type="text/javascript">
function modifierChemin()
{
document.forms['nom_du_form'].elements['cheminFichier'].value = document.forms['nom_du_form'].elements['nomFichier'].value;
}
</script>
puis dans ta balise form :
echo "<form action='mapage.php' method='post' name='nom_du_form'>";
echo "<p><input type='file' name='nomFichier' onChange='modifierChemin();' />";
echo "<input type='hidden' name='cheminFichier' value='' />";
echo "<input type='submit' name='valider' value='vailder' />";
echo "</form>";
il ne te reste plus qu'à récupérer dans ton autre page ('mapage.php') les données passées par la méthode POST :
echo $_POST['nomFichier'];
echo $_POST[''cheminFichier];
voila c'est la seule solution que j'ai trouvée. En espérant que ça t'aide
piou