[HTML - INPUT - $_POST] Chemin de fichier tronqué

HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
Mordoum

[HTML - INPUT - $_POST] Chemin de fichier tronqué

Message par Mordoum »

Bonjour à tous,

j'utilise un formulaire avec des champs diverses... Un de celui-ci est de type File avec une zone texte TextArea et un bouton Ajouter.

Je m'explique: dans ce formulaire je souhaite remplir un tableau HTML de fichiers à joindre lors de l'envoi final du formulaire -> je fais 'Parcourir...' sur le champ de type File, j'ajoute un commentaire sur ce fichier dans la zone TextArea puis je clique sur le bouton Ajouter, et ainsi de suite et le tout gérer en PHP sur la même page....

Et mon soucis en fait (oufff): lors de l'envoi du formulaire avec la méthode $_POST du formulaire la valeur de mon champ de type File (chemin_doc) est par exemple "C:\mondossier\monfichier.txt" sous IE 7 et par contre sous FireFox 2 est "monfichier.txt" seulement . . .. .
J'utilise cette valeur de retour pour vérifier l'extension du fichier, la taille,....

Je ne comprends pas pourquoi cette différence !! !! :twisted:

Je suis d'accord sur le fond que le navigateur n'accède pas au fichier local du poste client mais j'ai du mal à l'admettre car j'utilise une balise Input 'standard' et que les 2 navigateurs ne se comportent pas à l'identique....

Concernant FireFox 2, il est bien obligé de mémoriser l'emplacement du fichier source sur le poste client avant de lancer la procédure de Upload ?

Merci d'avance pour votre aide.

Message envoyé avec : Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Pourquoi utilises-tu $_POST ? Est-ce que ce n'est pas mieux avec $_FILES ?
CF : http://www.php.net/manual/fr/features.file-upload.php

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3
Mordoum

Message par Mordoum »

Bonjour Calimo,

oui bien sûr la méthode $_FILES semblait plus adapté et je me suis résigné à utiliser les informations en provenance de cette méthode au lieu de $_POST....
Hé oui, je pensais remplir mon tableau HTML en mémoire avec la méthode $_POST puis uploader sur le serveur tous les fichiers ainsi mémorisés. :P

Donc à présent, j'ajoute un fichier, l'upload sur le serveur (ca peut prendre du temps alors pour chaque fichier), le mémorise dans ma BDD et... j'annule tout si l'utilisateur ne désire pas continuer... :cry:

Vive l'internet et son manque d'interactivité !

Bon courage à tous,
Michael

Message envoyé avec : Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Euh... j'ai pas trop compris ce qui te dérange là... c'est mieux avec $_FILES ou pas ?

En tous cas en lisant ça : http://www.w3.org/TR/html4/interact/for ... trol-types ...

Code : Tout sélectionner

file
    Creates a file select control. User agents may use the value of the value attribute as the initial file name.
Pas étonnant qu'il y ait différentes interprétations :roll:

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3
Mordoum

Message par Mordoum »

Merci Calimo pour le lien.... Dans un cas simple, c'est facile et rapide... 8-)

Dans mon cas, la méthode $_POST me permettait de regrouper tous les fichiers à uploader dans un tableau html/php et de les envoyer en une fois lorsque l'utilisateur avait terminé... :D

Avec la méthode $_FILES, l'utilisateur patiente lors de chaque upload vers le serveur... Bon les pièces jointes ne font pas toutes 20 Mo mais bon je pensais regrouper mes fichiers pour faire un upload unique.... :idea:

J'ai pas le choix: méthode $_FILES ou rien du tout (du moins si -> refonte totale de mon interface/logique de ma page... :twisted: )

Bye, be happy and keep cool ;-)

Michael


Message envoyé avec : Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

Mordoum a écrit :Avec la méthode $_FILES, l'utilisateur patiente lors de chaque upload vers le serveur... Bon les pièces jointes ne font pas toutes 20 Mo mais bon je pensais regrouper mes fichiers pour faire un upload unique.... :idea:
Tu peux peut-être ajouter un upload silencieux par XMLHttpRequest comme pour les pièces jointes dans Gmail (tout en laissant l'envoi "manuel" pour quand ça ne fonctionne pas, bien sûr).
♫ Li tens s'en veit, je n'ai riens fais ;
Li tens revient, je ne fais riens. ♪
Invité

Message par Invité »

Hello Benoit,

Merci pour ce dernier conseil mais je ne possède pas un niveau suffisant pour maitriser l'objet XMLHttpRequest...
:oops:

J'ai déjà eu un mal de chien pour faire deux listes déroulantes liées avec cet objet alors un upload.... :shock:

J'ai pu résoudre mon problème quand même ! :wink:

Merci à tous !
Bonne suite !

Michael

Message envoyé avec : Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 3 invités