134 votes

Soumettre un formulaire HTML sur une page personnelle

Je veux qu'un formulaire HTML se soumette à lui-même. Comment puis-je utiliser la fonction action attribut ?

  1. <form action="">
  2. <form action="#">
  3. <form action="some/address">
  4. <form>

Lequel des deux est préférable ?

160voto

En 2013, avec l'arrivée du HTML5, il suffit d'omettre l'attribut "action" pour soumettre soi-même un formulaire.

<form>

En fait, le Sous-section "Soumission de formulaire" du projet actuel de HTML5 n'autorise pas action="" (attribut vide). C'est contraire à la spécification.

Desde cette autre réponse de Stack Overflow .

31voto

Le Codeur Points 341

Utilice ? :

<form action="?" method="post">

Il renverra l'utilisateur à la même page.

24voto

muratgozel Points 549

Vous pouvez laisser l'attribut action vide. Le formulaire se soumettra automatiquement dans la même page.

<form action="">

Selon le spécification w3c L'attribut action doit être une url valide non vide en général. Il y a également une explication pour certaines situations dans lesquelles l'attribut action peut être laissé vide.

L'action d'un élément est la valeur de l'attribut formaction de l'élément, si l'élément est un bouton d'envoi et possède un tel attribut, ou la valeur de l'attribut action du propriétaire du formulaire, s'il en possède un, ou encore la chaîne vide.

Ils sont donc tous deux encore valables et fonctionnent :

<form action="">
<form action="FULL_URL_STRING_OF_CURRENT_PAGE">

Si vous êtes sûr que votre public utilise des navigateurs html5, vous pouvez même omettre l'attribut action :

<form>

18voto

Buts Points 1159

Si vous soumettez un formulaire en utilisant php, assurez-vous d'utiliser :

action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"

pour la sécurité.

0voto

DarkAjax Points 8324

Vous pouvez le faire en utilisant la même page sur l'attribut action : action='<yourpage>'

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X