Page 1 sur 1
Erreur formulaire champ facultatif
Posté : 06 mai 2014, 09:26
par hola
Bonjour à vous et merci à ceux qui m'aideront ; )
J'ai réalisé un formulaire d'ajout de contact pour mon espace administrateur.
Il faut à la fin cocher un bouton radio : soit le contact travaille au siège, et si c'est le cas une sous question s'affiche pour connaitre son service.
S'il travaille en agence, la question du bas ne s'affiche pas.
Lors du traitement des réponses, s'il s'agit d'un salarié du siège, il n'y a aucune erreur par contre pour un salarié d'agence si : Notice: Undefined index: service
Pourtant ce champs est facultatif...
Pouvez vous m'aider svp
Re: Erreur formulaire champ facultatif
Posté : 06 mai 2014, 10:03
par sirakawa
Bjr,
Comment procèdes-tu pour acher/montrer le champ de saisie facultatif?
- une div cachée que javascript montrerait
ou
- le formulaire est rechargé avec le champ facultatif quand le bouton est coché
ou
- autre solution choisie pa rtoi.
Re: Erreur formulaire champ facultatif
Posté : 06 mai 2014, 10:07
par hola
Bonjour merci de te réponse ; )
Oui je l'ai fais en js, avec un champ caché ; )
Re: Erreur formulaire champ facultatif
Posté : 06 mai 2014, 10:11
par moogli
salut,
a priori tu utilise un champ de $_POST qui n'existe pas.
Il est impératif de tester l'existence de ces champs avant de la utiliser (pour éviter le problème que tu indique).
pour cela utilise
empty ou
isset.
@+
Re: Erreur formulaire champ facultatif
Posté : 06 mai 2014, 10:13
par hola
J'utilise un champ $POST qui n'e'xiste pas mais pour les autres ca fonctionnent je dois faire comment du coup?

Re: Erreur formulaire champ facultatif
Posté : 06 mai 2014, 12:26
par sirakawa
Est-ce que ce champ se trouve bien avant le bouton envoyer et avant </form> y compris quand il est caché?
il faut qu'il soit type = 'hidden' mais pas disabled....
Re: Erreur formulaire champ facultatif
Posté : 06 mai 2014, 14:15
par hola
Oui, il se trouve bien avant : ( par contre je n'ai pas utilise hidden mais :
j'ai mis un onClick="cacher(); pour les champs qui n'affichetn pas la question et un onClick="afficher(); pour l'autre.
Et voici le script que j'utilise
<script type="text/javascript">
document.getElementById("champ_cache").style.display = "none";
function afficher()
{
document.getElementById("champ_cache").style.display = "block";
}
function cacher()
{
document.getElementById("champ_cache").style.display = "none";
}
</script>
Re: Erreur formulaire champ facultatif
Posté : 06 mai 2014, 14:25
par Megadeth
Salut,
mets ce champ en style visibility hidden comme suggéré par sira, ca devrait marcher
Mega

Re: Erreur formulaire champ facultatif
Posté : 06 mai 2014, 14:28
par Invité
Merci ; ) tu parles de quel champs?
Re: Erreur formulaire champ facultatif
Posté : 06 mai 2014, 14:43
par Invité
En fait le pb vient du php puisque je n'ai pas de pb pour récupérer les infos lorsqu'il s'agit de la case à cocher qui affiche la question...
C'est qu'en fait lorsque je coche l'autre, donc celle qui n'affiche pas la question mais valide directement, il manque une donnée par rapport à ma requete et à mes déclarations de variables.. Et là forcément celle ci reste vide... Pourtant je ne l'ai pas déclaré obligatoire dans php myadmin
Re: Erreur formulaire champ facultatif
Posté : 06 mai 2014, 20:20
par sirakawa
Il suffit quand même de tester ce champ dans le script de réception:
entre isset isnull et Compagnie, il ya de quoi faire...
Re: Erreur formulaire champ facultatif
Posté : 07 mai 2014, 10:27
par moogli
le plus simple c'est d'ajouter un var_dump($_POST) tu verra bien ce que $_POST contient.
ensuite php fournit tout les champs du formulaire, s'il manque un champ c'est que tu ne l'envoie pas.
sans le code du formulaire on ne peux que rester dans le flou.
@+