Page 1 sur 1

Garder la valeur des champs du formulaire ...

Posté : 28 juil. 2007, 13:55
par Zéphirynx
Bonjour,

en fait, j'ai une autre question pour ce sujet : dans mon formulaire, j'ai également un autre formulaire pour l'upload de fichiers. Quand le fichier est uploadé, je n'arrive plus à avoir accès aux valeurs des champs de mon formulaire car j'ai dû inclure le formulaire de l'upload dans celui de la page globale.

Dois-je, dans ce cas-là, utiliser les variables session pour continuer à avoir accès au contenu des champs de mon formulaire.

Merci d'avance

Thierry

Posté : 28 juil. 2007, 15:47
par Ryle
Pas tout compris à la question.

Si tu as deux formulaire dans une page et que tu soumets l'un des deux, les données de l'autre sont perdues à moins effectivement de les avoir conservé par ailleurs (session, cookie, base). Sinon tu peux ne faire qu'un seul formulaire contenant toutes les données et ainsi tout envoyer en même temps, traiter uniquement l'upload et réafficher simplement les autres valeurs.

Posté : 28 juil. 2007, 16:04
par Zéphirynx
Bonjour Ryle,

je tiens à te remercier pour ta réponse à mon message.

Si tu veux, j'ai un formulaire avec une liste déroulante comprenant différents produits. Quand l'utilisateur sélectionne un produit, le formulaire est soumis et un tableau avec les différentes caractéristiques du produit à remplir est créé avec un formulaire "Upload" en dessous du tableau.

De cette façon, ça permet à l'utilisateur de pouvoir insérer des photos en rapport avec ce produit. Le problème, c'est que j'ai donc, dans ce cas-ci, 2 formulaires dans la même page.

J'espère que tu comprends déjà mieux ce que je veux faire ?

As-tu une solution pour résoudre ce problème (variables session, ...) ?

Merci d'avance

Thierry

Posté : 28 juil. 2007, 16:06
par Cyrano
Non, envisage le JavaScript. À partir d'un formulaire, alimente des champs cachés de l'autre formulaire et là tu récupèreras tout en soumettant le second formulaire. Ça peut être valable dans l'autre sens bien entendu.

Ce que tu ne peux pas faire, c'est imbriquer les formulaires l'un dans l'autre.

Posté : 28 juil. 2007, 16:14
par Invité
Bonjour Cyrano,

je tiens à te remercier pour ta réponse rapide à mon message.

Penses-tu que ce que je veux faire est réalisable ? Comme on dit, nul n'est tenu à l'impossible mais ce n'est pas évident à développer.

Par hasard, pourrais-tu me dire où je pourrais trouver de l'information pour ce genre de choses à faire ?

Par hasard, n'as-tu pas un example avec un upload faisant partie d'un autre formulaire ?

Merci d'avance pour ton aide

Thierry

Posté : 28 juil. 2007, 16:46
par Cyrano
Qu'est-ce qui t'empêche d'avoir un formulaire unique ?

Posté : 28 juil. 2007, 17:00
par Invité
Bonjour Cyrano,

avant de lire ton message à ma question, j'avais essayé de faire un test en mettant " enctype='multipart/form-data' " dans mon formulaire principal et en supprimant le formulaire d'upload généré dynamiquement quand le client sélectionne un produit. J'ai juste laissé les 2 champs avec le nom du fichier à transférer et le bouton submit upload.

Et à ma plus grande surprise, tout a l'air de fonctionner. Par contre, je ne comprends pas comment j'ai encore le bouton "Browse..." alors que j'ai enlevé le formulaire upload.

Voici mon code :


<form name="frmState" method="post" action="CleverFormWithPhotos.php" onSubmit="return ValidateForm();" enctype="multipart/form-data">

...
...

   $strDynamicProduct = "";
   $strDynamicProduct .= "        <input type='file' name='fichier_upload' id='fichier_upload' size='100'>";
   $strDynamicProduct .= "        &nbsp;";
   $strDynamicProduct .= "        <input type='submit' name='upload' value='Upload File'>";

   echo $strDynamicProduct 

</form>


Je te tiens au courant de la suite de mes tests.

Merci d'avance

Thierry

Posté : 28 juil. 2007, 19:17
par Zéphirynx
Bonjour à tous,

concernant ce problème, puis-je avoir un bouton "upload" par produit pour transférer les fichiers sur le serveurs ? En fait, quand l'utilisateur sélectionne un produit, je crée automatiquement un champ input pour le nom de fichier et un bouton upload. De cette façon, l'utilisateur sait visualiser les photos en dessous du tableau lui correspondant. C'est plus clair pour l'utilisateur. Il voit les photos qui se rapportent au produit en question.

Merci d'avance

Thierry