Formulaire html ne renvoi pas lien du fichier [Fermé]

- - Dernière réponse : canarder
Messages postés
1722
Date d'inscription
jeudi 28 août 2008
Statut
Membre
Dernière intervention
13 mai 2018
- 1 juil. 2012 à 20:33
Bonjour,

J'ai un petit formulaire qui permet tout simplement de sélectionner un fichier:
<form method='post'>
<input type='file' name='fichier" />
<input type='submit' />
<form/>

Dans mon traitement php j'utilise ensuite le résultat de ce formulaire (normalement le chemin du fichier) pour l'uploader par FTP.

Le problème vient du faite que sous Firefox la valeur que je récupère est juste le nom du fichier, il n'y a pas le lien... Alors que sous IE je récupère bien le chemin...

Quelqu'un aurait une solution?

Merci d'avance
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
699
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
4 décembre 2016
78
2
Merci
il te manque l'attribut enctype="multipart/form-data" à ton form

Dire « Merci » 2

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 70515 internautes nous ont dit merci ce mois-ci

J'ai essayé, ça ne fonctionne pas... Avec cela, même sous IE aucune valeur n'est retourné... (Avec $_POST ou $_FILES).

Il y a une utilisation particulière pour enctype="multipart/form-data"? Ou une autre idée...?
maka54
Messages postés
699
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
4 décembre 2016
78 -
oui, cela permet d'uploader un fichier avec la balise file

sans l'attribut, tu n'envoie rien
il manque pas dans la balise <form method="post" action="... ">

A la place des ... tu met le nom de ta page qui traite les données envoyé par le formulaire
La présence de action="..." n'a à mon avis rien à voir avec mon problème... --"
maka54
Messages postés
699
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
4 décembre 2016
78 -
ton problème est comment utiliser un input file

formulaire.php

<form method="post" enctype="multipart/form-data" action="traitement.php">
	<input type="file" name="fichier" />
	<input type="submit" />
<form/> 



traitement.php

<?php 

print_r($_FILES["fichier"]);

// à toi de coder la suite ...

?>


test ces deux pages et revient si tu as des questions
Messages postés
1722
Date d'inscription
jeudi 28 août 2008
Statut
Membre
Dernière intervention
13 mai 2018
269
0
Merci
si on omet action, l'action est par défaut la page courante, ce qui permet d'éviter d'avoir plusieurs fichiers.
maka54
Messages postés
699
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
4 décembre 2016
78 -
ce qui permet d'éviter d'avoir plusieurs fichiers. 


c'est pas un bon conseil à donner, pour la lisibilité du code, il vaut mieux séparer
canarder
Messages postés
1722
Date d'inscription
jeudi 28 août 2008
Statut
Membre
Dernière intervention
13 mai 2018
269 -
ça évite des redirections pour rien, ou d'utiliser le même code sur plusieurs pages.
au contraire je le conseille.
maka54
Messages postés
699
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
4 décembre 2016
78 -
aucune redirection n'est nécessaire comme tu le dis, et en aucun cas on retrouve le meme code sur plusieurs pages

une page destinée au formulaire html et la seconde au traitement PHP , c'est bien plus simple comme çà
canarder
Messages postés
1722
Date d'inscription
jeudi 28 août 2008
Statut
Membre
Dernière intervention
13 mai 2018
269 -
bref, j'ai pas envie d'un débat, chacun ses méthodes.