Aller au contenu

Sujets conseillés

Posté (modifié)

Bonjour à tous !

Je me demandais à quoi cela sert de donner un nom avec l'attribut name aux <form> ??? :rolleyes:

(et une petite question aussi, label va avec id ou le name pour le input correspondant ?)

Modifié par Hells_Dark
Posté

Le name, c'est au input type="submit" qu'il faut le mettre, pour pouvoir gérer la soumission.

Le label est quand à lui relié à l'id, via l'attribut for.

Le name dans les id, c'est là aussi un attribut de controle du formulaire via php par exemple.

@++

Posté (modifié)

Merci pour cette réponse

Le name dans les id dis-tu ? :s

Je vois pas à quoi tu fais refference...

Et le name dans la balise <form>, il sert à quoi ?

PS : J'adore ton blog, j'y vais couremment, continue ainsi ;)

Modifié par Hells_Dark
Posté

OUpssshhh, le name dans les input, pas dans les id... :wacko:

donc je récapitule au propre :

dans le form, tu met method="..", action=".."

dans les label tu met for="..."

dans les input tu met name="..." pour la gestion du formulaire (via php ou autre), et id="..." pour le label, avec for = label

et enfin name dans le input type="submit" qui te sers à vérifier que le formulaire à été soumis ou non.

@++

ps : merci bien pour le compliment. :blush:

Posté

J'en sais rien, c'est pas moi qui ai codé la chose, j'imagine que ca doit servir si c'est indiqué ;) mais ca n'est pas indispensable ni obligatoire, et perso je ne vois pas à quoi il peut servir, j'attend l'avis de personnes éclairées.

Posté

Bonjour,

Voilà 3 liens bien pratiques quand on se pose ce genre de questions...

L'index des éléments HTML 4.01 classés par ordre alphabétique, avec un lien direct vers leur présentation détaillée dans les spécifications...

L'index des attributs HTML 4.01 avec les éléments concernés, le type, la valeur par défaut...

L'index des propriétés CSS 2, avec les valeurs possibles, la valeur initiale...

Pour l'élément form par exemple, on trouvera

name = cdata

Cet attribut nomme l'élément de sorte qu'il puisse être appelé par une feuille de style ou un script. Remarque : Cet attribut est conservé pour la rétro-compatibilité. Les applications devraient utiliser l'attribut id pour identifier les éléments.

Attention : si on travaille en XHTML, il faut être attentif aux différences entre le HTML et le XHTML comme toutes les balises fermées, les balises et attributs en minuscules... l'attribut name remplacé par l'attribut id.

Posté

L'attribut name rempalcé par l'attribut id, oui mais pas tout le temps, notament pour les formalaires, il faut converver name pour les utiliser via php au moins... enfin je crois que ca marche pas sinon...

Posté
Attention : si on travaille en XHTML, il faut être attentif aux différences entre le HTML et le XHTML comme toutes les balises fermées, les balises et attributs en minuscules... l'attribut name remplacé par l'attribut id.

Pas remplacé, en fait :

- si l'on diffuse du XHTML en tant que HTML (comme c'est le plus ouvent le cas), il faut doubler l'attribut name par un attribut id de même valeur pour respecter les règles de compatibilité théoriques.

- si l'on diffuse du XJTML en tant que XML (ce qu'on a très rarement besoin de faire), l'attribut name disparaît au profit de l'attribut id.

Pour l'instant donc, restons en HTML qui convient à la plupart des besoins, et contentons-nous de "name", ou passons en XHTML et dupliquons name et id dans l'idée que cela servira par la suite.

Posté

J'avoue avoir hésité pour la formulation de ma réponse...

L'article d'Openweb auquel je fais allusion laisse planer un certain doute.

S'il y est clairement dit qu'en raison du mauvais support de l'attribut id par les anciens navigateurs

il importe (en XHTML 1.0) de continuer à utiliser à la fois les attributs "name" et "id" pour désigner un même objet dans ces navigateurs, en leur attribuant des valeurs identiques

la phrase suivante me perturbe un peu

Ajoutons que l'attribut "name" des éléments a, applet, form, frame, iframe, img, and map est déprécié et ne peut plus être employé en XHTML.
Guest vchahun
Posté

Le seul avantage à l'utilisation de l'attribut name pour les formulaires dans la balise <form>, c'est de pouvoir facilement accéder aux méthodes javascript telles que document.forms["nom_du_formulaire"].submit(); et aux champs de ce formulaire possédant aussi un attibut name (document.forms["nom_du_formulaire"].nom_du_champ.value="valeur du champ";).

Celà dit, l'accès par ID est aussi simple: document.getElementById("id_du_champ").value="test";.

Etant un fervent admirateur de la technologie XML (bien que ne transmettant pas mes pages XHTML 1.1 dans le bon mime-type), j'utilise plutôt cette pratique ...

Posté

Tout d'abord, bonjour à tous :), c'est mon premier post ici.

En ce qui concerne l'html (je ne fais pas de xhtml), je souhaites préciser:

ElMoustiko ne l'a pas affirmer assez, si le formulaire est destiné à être traiter sur le serveur, c'est l'attribut name qui est pris en compte, pas l'id. En php par exemple, un champ text est récupéré avec $_POST['name_du_champs'] (ou $_GET['name_du_champs'], et il contient l'attribut value. Si le champs a un id mais pas de name, le serveur ne recoit rien (ni avec mozilla, ni avec IE6)

vchahun a tort. On peut sans problème utiliser les id pour accéder à un champs de formulaire via le DOM, même avec l'objet forms. (Du moins avec un doctype strict, j'ai pas essayé en transitional).

Exemple: alert(document.forms[id_du form].id_du_champs.value) fonctionne sans problème sous mozilla et IE6.

Donc en html strict l'attribut name est déprécié, et peut être abandonné si le formulaire n'est pas destiné à être récupérer et traiter sur le serveur, dans ce cas l'id sera parfaitement adapté pour y accéder dans les css ou les javascript, dans le cas contraire on est obligé de mettre l'attribut name pour récupérer ces données.

En ce qui concerne xhtml, je n'ai fait aucun essai. Il faudrait voir ce qu'envoient les navigateurs dans les différents cas évoqués (selon qu'ils passent mode quirk ou non).

Posté

Bonjour (et bienvenue),

Pourrais tu me donner un exemple où un formulaire est traité par le serveur ? JE ne vois pas bien à quoi tu fais allusion...

Merci ;)

Posté

C'est une fonction première des formulaires ! :blink:

Quand tu rentre sur un forum par exemple, on te demande ton nom et ton mot de passe (via 2 champs, un de type text et un de type password), quand tu cliques sur le bouton submit, le serveur récupère les valeurs du formulaire et vérifie que tu fais partie de sa base de donnée. Ce traitement s'effectue via un language coté serveur comme php ou asp. En php par exemple, ces valeurs sont récupérées dans le tableau $_POST ou $_GET.

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...