Comment récuperer infos d'un TEXTAREA
hugo_d
Messages postés
87
Date d'inscription
Statut
Membre
Dernière intervention
-
hugo_d Messages postés 87 Date d'inscription Statut Membre Dernière intervention -
hugo_d Messages postés 87 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis actuellement occupé de réaliser un site, dans lequel j'aimerai y joindre un formulaire de contact. Un formulaire où tous les champs sont obligatoires.
Lorsque l'utilisateur le complète il y a alors deux solutions possibles :
1) tous les champs sont bien complétés et le message est envoyé
2) tous les champs ne sont pas complétés, un message d'erreur est alors affiché.
Seul problème est que dans le deuxième cas, tout le formulaire se réinitialise.
J'ai donc utilisé un peu de code PHP que j'ai glissé dans la valeur de chaque champs. Ce qui donne par exemple pour le champs NOM :
Ce qui marche à merveille pour tous les champs de type TEXT mais pas pour les textarea.
J'aimerai donc savoir comment faire pour récupérer l'information renseignée avant le message d'erreur pour un champ "Textarea"
Voici le code complet de mon formulaire :
Et enfin, voici l'adresse du site si cela peut vous aider :
http://sbproduction.be/site/index.html
Ps : je me lance dans le PHP seulement depuis 2 jours. Autant vous dire que je ne comprends rien pas grand chose pour le moment. Donc si possible soyez précis
D'avance un grand merci
Je suis actuellement occupé de réaliser un site, dans lequel j'aimerai y joindre un formulaire de contact. Un formulaire où tous les champs sont obligatoires.
Lorsque l'utilisateur le complète il y a alors deux solutions possibles :
1) tous les champs sont bien complétés et le message est envoyé
2) tous les champs ne sont pas complétés, un message d'erreur est alors affiché.
Seul problème est que dans le deuxième cas, tout le formulaire se réinitialise.
J'ai donc utilisé un peu de code PHP que j'ai glissé dans la valeur de chaque champs. Ce qui donne par exemple pour le champs NOM :
<label for="nom">Nom :</label> <input type="text" name="nom" id="nom" size="66" tabindex="10" value="<?php echo $nom; ?>"/>
Ce qui marche à merveille pour tous les champs de type TEXT mais pas pour les textarea.
J'aimerai donc savoir comment faire pour récupérer l'information renseignée avant le message d'erreur pour un champ "Textarea"
Voici le code complet de mon formulaire :
<form name="formulaire_sbp" method="post" action="contact.php?post=true"> <label for="nom">Nom :</label> <input type="text" name="nom" id="nom" size="66" tabindex="10" value="<?php echo $nom; ?>"/> <br/> <label for="prenom">Prenom :</label> <input type="text" name="prenom" id="prenom" size="66" tabindex="20" value="<?php echo $prenom; ?>"/> <br/> <label for="mail">Email :</label> <input type="text" name="mail" id="mail" size="66" tabindex="30" value="<?php echo $mail; ?>"/> <br/> <label for="telephone">Téléphone :</label> <input type="text" name="telephone" id="telephone" size="66" tabindex="40" value="<?php echo $telephone; ?>"/> <br/> <label for="sujet">Sujet :</label> <input type="text" name="sujet" id="sujet" size="66" tabindex="50" value="<?php echo $sujet; ?>"/> <br/> <label for="message">Message :</label> <textarea class="message" name="message" id="message" rows="10" cols="50" tabindex="60"></textarea> <br/> <input class="envoyer" type="submit" value="Envoyer" tabindex="70"/> </form> if(isset($_POST) && isset($_POST['nom']) && isset($_POST['prenom']) && isset($_POST['mail']) && isset($_POST['telephone']) && isset($_POST['sujet']) && isset($_POST['message'])){ extract($_POST); if(!empty($nom) && !empty($prenom) && !empty($mail) && !empty($telephone) && !empty($sujet) && !empty($message)) { $message=str_replace("\'","'",$message); $destinataire="hugodewattinne@live.be"; $sujet="Message SB Production"; $msg="Message provenant du site www.sbproduction.be \n Nom: $nom \n Prenom: $prenom \n Email: $mail \n Téléphone: $telephone \n Sujet: $sujet \n Message: $message"; $entete="From: $nom $prenom \n Reply-To: $mail"; mail($destinataire, $sujet, $msg, $entete); $confirmation= "<p class=\"confirmation\">Votre message a bien été envoyé</p>"; } else{ $confirmation = "<p class=\"erreur\">Vous n'avez pas rempli tous les champs</p>"; } } ?>
Et enfin, voici l'adresse du site si cela peut vous aider :
http://sbproduction.be/site/index.html
Ps : je me lance dans le PHP seulement depuis 2 jours. Autant vous dire que je ne comprends rien pas grand chose pour le moment. Donc si possible soyez précis
D'avance un grand merci
A voir également:
- Comment récuperer infos d'un TEXTAREA
- Comment recuperer un message supprimé sur whatsapp - Guide
- Comment récupérer un compte facebook piraté - Guide
- Comment recuperer une video sur youtube - Guide
- Comment récupérer un document dans le presse-papier samsung - Guide
- Comment récupérer un compte facebook désactivé - Guide
2 réponses
Bonjour,
Je ne suis pas sûr d'avoir bien compris mais si tu veux une valeur par défaut, comme pour tes autres champs, tu fais comme ceci:
Autrement dit, tu met la valeur par défaut entre les balise <textarea> et </textarea> et non dans l'attribut value comme pour les autres champs.
"Trotti Trotta, Monsieur P, il y a des anges qui veulent un bisou..."
"Même les joujou de Monsieur P ont besoin de joujou"
Je ne suis pas sûr d'avoir bien compris mais si tu veux une valeur par défaut, comme pour tes autres champs, tu fais comme ceci:
<form action="cible.php" method="post"> <input type="text" name="texte1" value="<?php echo valeur_defaut1; ?>" /><br /> <input type="textearea" name="texte2"><?php echo valeur_defaut2; ?></textarea> ... </form>
Autrement dit, tu met la valeur par défaut entre les balise <textarea> et </textarea> et non dans l'attribut value comme pour les autres champs.
"Trotti Trotta, Monsieur P, il y a des anges qui veulent un bisou..."
"Même les joujou de Monsieur P ont besoin de joujou"
Mais bien sur ! je n'y avais même pas pensé ^^
En tout cas un grand merci ca marche nickel.
Sinon je me sers de ce bout de code non pas pour afficher une valeur par défaut mais plutot pour mettre en mémoire le contenu des champs.
Si je ne fais pas ça, si l'utilisateur appui sur "envoyer" sans avoir complété les champs obligatoires, il reçoit un message lui disant qu'il a oublié des champs et par la même occasion tout le formulaire est réinitialisé. Ce qui est assez pénible.
Or avec ce code, il rappelle automatiquement la valeur des champs complété.
En tout cas un grand merci ca marche nickel.
Sinon je me sers de ce bout de code non pas pour afficher une valeur par défaut mais plutot pour mettre en mémoire le contenu des champs.
Si je ne fais pas ça, si l'utilisateur appui sur "envoyer" sans avoir complété les champs obligatoires, il reçoit un message lui disant qu'il a oublié des champs et par la même occasion tout le formulaire est réinitialisé. Ce qui est assez pénible.
Or avec ce code, il rappelle automatiquement la valeur des champs complété.
Yo, nom mettre en mémoire ne sert à rien. Un formulaire html est envoyé vers une page de traitement PHP (méthode GET ou POST) qui récupéres ces variables(dites d'envirronnement puisqu'on les passe d'une page à l'autre alors que les variables sont par défauts limitées à une page ou une partie du script.
Donc sur la page indiqué dans la méthode d'envoi par l'attribut action=(en POST, en GET on envoies sur la même page en principe) il y auras bien des variables POST indiqué comme ceci:
$_POST['mon_champ_de_formulaire'] qui correspond u champ du formulaire dont le name est définit à mon_champ_de_formulaire, celui ci serait:
<input type="text" name="mon_champ_de_formulaire" />
Plus de détails sur la méthode POST et GET(quasiment identique mais moins sécurisé puisque les variables sont transmises dans l'url):
http://www.phpsources.org/tutoriel-get-post.htm
Pour rendre des champs obligatoires le mieux est de faire un contrôle en javascript(qui s'éxécutes sur l'ordinateur du client) et lui demander le cas échéant de compléter les champs. Un contrôle des variables POST aussi est nécessaire et mettre celui en javascript avant permet d'éviter un échange serveur inutile et ralentissant la navigation.
Donc sur la page indiqué dans la méthode d'envoi par l'attribut action=(en POST, en GET on envoies sur la même page en principe) il y auras bien des variables POST indiqué comme ceci:
$_POST['mon_champ_de_formulaire'] qui correspond u champ du formulaire dont le name est définit à mon_champ_de_formulaire, celui ci serait:
<input type="text" name="mon_champ_de_formulaire" />
Plus de détails sur la méthode POST et GET(quasiment identique mais moins sécurisé puisque les variables sont transmises dans l'url):
http://www.phpsources.org/tutoriel-get-post.htm
Pour rendre des champs obligatoires le mieux est de faire un contrôle en javascript(qui s'éxécutes sur l'ordinateur du client) et lui demander le cas échéant de compléter les champs. Un contrôle des variables POST aussi est nécessaire et mettre celui en javascript avant permet d'éviter un échange serveur inutile et ralentissant la navigation.