Formulaire PHP, problème avec une "value"
Résolu/Fermé
A voir également:
- Formulaire PHP, problème avec une "value"
- Formulaire de réclamation facebook - Guide
- Easy php - Télécharger - Divers Web & Internet
- Formulaire instagram compte suspendu - Guide
- Le formulaire rempli - Guide
- Confirmer le nouvel envoi du formulaire err_cache_miss ✓ - Forum HTML
16 réponses
Dynamix
Messages postés
202
Date d'inscription
dimanche 22 mars 2009
Statut
Membre
Dernière intervention
30 avril 2011
76
21 sept. 2010 à 22:22
21 sept. 2010 à 22:22
Enlève le "Nom" du value?
Dynamix
Messages postés
202
Date d'inscription
dimanche 22 mars 2009
Statut
Membre
Dernière intervention
30 avril 2011
76
21 sept. 2010 à 22:42
21 sept. 2010 à 22:42
Oui cela est normal en fait, je suppose que la valeur de la variable $f_1 est issue d'un $_POST ?
Dynamix
Messages postés
202
Date d'inscription
dimanche 22 mars 2009
Statut
Membre
Dernière intervention
30 avril 2011
76
21 sept. 2010 à 22:53
21 sept. 2010 à 22:53
Tu aurais deux solutions si j'ai bien compris ce que tu voulais :
1. Tu mets un peu de javascript pour enlever nom au clic de l'utilisateur :
2. Sinon tu fais un test sur $f_1 : if(empty($f_1)) echo 'Nom'; à l'intérieur du value par exemple....
1. Tu mets un peu de javascript pour enlever nom au clic de l'utilisateur :
<input onclick="this.value='';" .... />
2. Sinon tu fais un test sur $f_1 : if(empty($f_1)) echo 'Nom'; à l'intérieur du value par exemple....
J'aime bien l'idée du javascript!
Cela dit je comprends pas bien ou intégrer cette ligne de code... A la place de "value"?
comme ça:
<input type='text' style='width:200; <?if($errf_1==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_1' <input onclick="this.value='';" NOM /><?echo stripslashes($f_1);?> Nom' size="33px" />
Je sais, je ne suis pas au point!
Cela dit je comprends pas bien ou intégrer cette ligne de code... A la place de "value"?
comme ça:
<input type='text' style='width:200; <?if($errf_1==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_1' <input onclick="this.value='';" NOM /><?echo stripslashes($f_1);?> Nom' size="33px" />
Je sais, je ne suis pas au point!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Dynamix
Messages postés
202
Date d'inscription
dimanche 22 mars 2009
Statut
Membre
Dernière intervention
30 avril 2011
76
Modifié par Dynamix le 21/09/2010 à 23:27
Modifié par Dynamix le 21/09/2010 à 23:27
Ceci est un événement JavaScript que tu rajoutes, donc tu le mets en plus!
<input type='text' style='width:200; <?if($errf_1==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_1' <input onclick="this.value='';" value='NOM' /><?echo stripslashes($f_1);?> Nom' size="33px" />
Génial! Ce qui se passe maintenant c'est que le mot "nom" apparaît seulement lorsque l'on clique dans le champ (normal pour un "onclick"). Comment faire pour que "nom" soit là et disparraisse au moment ou l'on clique?
Quoi qu'il en soit, Merci beaucoup pour ton aide. J'éspère pouvoir te renvoyer l'ascenseur, peut-être pour des questions plus "graphiques".
Quoi qu'il en soit, Merci beaucoup pour ton aide. J'éspère pouvoir te renvoyer l'ascenseur, peut-être pour des questions plus "graphiques".
Dynamix
Messages postés
202
Date d'inscription
dimanche 22 mars 2009
Statut
Membre
Dernière intervention
30 avril 2011
76
Modifié par Dynamix le 21/09/2010 à 23:38
Modifié par Dynamix le 21/09/2010 à 23:38
Je n'ai pas compris, ce que je t'ai dit est censé faire disparaître le Nom au moment du clic et pas l'inverse.
Dans cette ligne il faut comprendre : "Au clic sur mon champ, j'affecte à CET élément (this) la VALEUR (value) EGALE (=) à 'La valeur que tu veux'"
Donc si tu veux effacer tu mets '' comme valeur comme j'ai posté au dessus.
onclick="this.value='La valeur que tu veux'
Dans cette ligne il faut comprendre : "Au clic sur mon champ, j'affecte à CET élément (this) la VALEUR (value) EGALE (=) à 'La valeur que tu veux'"
Donc si tu veux effacer tu mets '' comme valeur comme j'ai posté au dessus.
mmmh.. C'est le contraire qui se passe. "Nom apparait lorsque l'on clique sur le champ. Voici le code:
<input type='text' style='width:200; <?if($errf_1==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_1' value='<?echo stripslashes($f_1);?>' size="33px" onclick="this.value='Nom';" />
et ici pour voir (premier champ seulement):
http://www.formatmondial.com/infodos/contacte.php
<input type='text' style='width:200; <?if($errf_1==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_1' value='<?echo stripslashes($f_1);?>' size="33px" onclick="this.value='Nom';" />
et ici pour voir (premier champ seulement):
http://www.formatmondial.com/infodos/contacte.php
Dynamix
Messages postés
202
Date d'inscription
dimanche 22 mars 2009
Statut
Membre
Dernière intervention
30 avril 2011
76
21 sept. 2010 à 23:42
21 sept. 2010 à 23:42
Tu enlèves le Nom du onclick (tu laisses '') et tu le mets dans le value comme au début pour l'avoir par défaut tout de même.
Tu as trouvé! C'est parfait! Grandiose!
Merci Dynamix!
Merci pour le temps que tu m'as consacré et le savoir que tu as partagé!
Bonne soirée à toi et n'hésite pas à me contacter via cette conversation si un jour tu as besoin de mes services. (J'imagine que j'aurais quand à moi plutôt besoin des tiens :-) )
Bonne nuit.
Merci Dynamix!
Merci pour le temps que tu m'as consacré et le savoir que tu as partagé!
Bonne soirée à toi et n'hésite pas à me contacter via cette conversation si un jour tu as besoin de mes services. (J'imagine que j'aurais quand à moi plutôt besoin des tiens :-) )
Bonne nuit.
Dynamix
Messages postés
202
Date d'inscription
dimanche 22 mars 2009
Statut
Membre
Dernière intervention
30 avril 2011
76
21 sept. 2010 à 23:54
21 sept. 2010 à 23:54
Ok y a pas de soucis, content de t'avoir aidé ;). Je me débrouille pas trop mal sur tout ce qui est webdesign mais si l'envie/le besoin me prend je te mp et réciproquement (sauf si c'est bon à partager bien sûr :)).
Bonjour Dynamix.
Hier soir, fatigué j'ai pas tout vérifier mais il reste un petit problème. Si un visiteur oublie de remplir un champ mais clique quand même sur le bouton "envoyer" mon scripte lui affiche un message d'erreur lui indiquant qu'un champ est vide. Le problème est que le titre du champ vide (p.ex "Nom") se répète dans le champs ("Nom Nom") et ainsi à chaque clique.
Saurais-tu comment l'éviter?
Bonne matinée!
Hier soir, fatigué j'ai pas tout vérifier mais il reste un petit problème. Si un visiteur oublie de remplir un champ mais clique quand même sur le bouton "envoyer" mon scripte lui affiche un message d'erreur lui indiquant qu'un champ est vide. Le problème est que le titre du champ vide (p.ex "Nom") se répète dans le champs ("Nom Nom") et ainsi à chaque clique.
Saurais-tu comment l'éviter?
Bonne matinée!
Dynamix
Messages postés
202
Date d'inscription
dimanche 22 mars 2009
Statut
Membre
Dernière intervention
30 avril 2011
76
22 sept. 2010 à 20:33
22 sept. 2010 à 20:33
Puis-je avoir le code? (Sinon j'ai regardé sur ton site je vois pas trop...)
Salut Dinamix!
J'ai passé le code à un pote qui a trouvé une solution...
<input type='text' style='<? if($errf_1==1){print(";background-color:".$color_form_warn.";color:".$color_font_warn);}?>;' name='f_1' value='<?echo stripslashes($f_1);?>' size="30" onFocus="if(this.value=='Nom'){this.value='';}" onBlur="if(this.value==''){this.value='Nom'}" />
Tu peux aller voir le résultat ici:
http://www.formatmondial.com/infodos/contacte.php
Avec un peu de Jquery et de CSS c'est completement crossbrowser! (Mac en tout cas, demain je test sous PC)
Qu'en penses-tu?
J'ai passé le code à un pote qui a trouvé une solution...
<input type='text' style='<? if($errf_1==1){print(";background-color:".$color_form_warn.";color:".$color_font_warn);}?>;' name='f_1' value='<?echo stripslashes($f_1);?>' size="30" onFocus="if(this.value=='Nom'){this.value='';}" onBlur="if(this.value==''){this.value='Nom'}" />
Tu peux aller voir le résultat ici:
http://www.formatmondial.com/infodos/contacte.php
Avec un peu de Jquery et de CSS c'est completement crossbrowser! (Mac en tout cas, demain je test sous PC)
Qu'en penses-tu?
Dynamix
Messages postés
202
Date d'inscription
dimanche 22 mars 2009
Statut
Membre
Dernière intervention
30 avril 2011
76
22 sept. 2010 à 21:04
22 sept. 2010 à 21:04
Ah ben c'est nickel comme ça :)
Sinon tu devrais pas avoir de soucis de compatibilité là entre les navigateurs.
Sinon tu devrais pas avoir de soucis de compatibilité là entre les navigateurs.
Ouais, ça à l'air de rouler... Ensuite, le seul "problème" était d'arriver à faire que les champs "inputs" (en pixels) et "textarea" (en cols) aient la même taille. Je l'ai assez bêtement régler dans le CSS:
input, textarea {
margin: 0;
padding: 0;
width: 400px;
}
Je le dit car ça pourrait intéresser certains...
Merci pour tout Dinamix et au plaisir!
input, textarea {
margin: 0;
padding: 0;
width: 400px;
}
Je le dit car ça pourrait intéresser certains...
Merci pour tout Dinamix et au plaisir!
21 sept. 2010 à 22:31
Je me suis mal expliqué. En fait je veux que "Nom" apparaisse dans le champ du formulaire et que le visiteur le remplace par son nom. Seulement ce fameux "Nom" ce duplique dans le champ à chaque fois que l'on clique sur " envoyer".