<form action=""> vs. <form action="$_SERVER['PHP_SELF']">
bearbeitet von
Hallo Matthias,
ich brauche ein wenig Hilfe beim Lesen der Spezifikation :-)
> Wenn das action-Attribut leer ist oder fehlt, werden die Formulardaten an die aktuelle Seite gesendet.
Dass der Wert des `action`-Attributs nicht leer sein darf, [wissen](https://forum.selfhtml.org/self/2017/mar/8/form-action-gleich-vs-form-action-gleich-form-action-gleich-dollar-server-php-self/1689404#m1689404) wir ja jetzt, [steht ja auch so in der Spezifikation](https://www.w3.org/TR/html5/forms.html#attr-fs-action). Aber wo steht denn, dass der Default-Wert die URL des aktuellen Dokuments ist? Der Validator [meckert nicht](https://validator.w3.org/nu/?doc=https%3A%2F%2Fjulius-cordes.de%2Ftests%2Fform), dann wird es wahrscheinlich korrekt sein.
[Bei den Werten des `method`-Attribut](https://www.w3.org/TR/html5/forms.html#attr-fs-method) ist Sie da klarer formuliert, wie ich finde (oder ich habe die klarer formulierte Stelle nicht gefunden...):
> The `method` and `formmethod` content attributes are enumerated attributes with the following keywords and states:
> {: @en}
> - The keyword `get`, mapping to the state **GET**, indicating the HTTP GET method.
> - The keyword `post`, mapping to the state **POST**, indicating the HTTP POST method.
> {: @en}
> The *invalid value default* for these attributes is the GET state. The *missing value default* for the method attribute is also the GET state. (There is no missing value default for the `formmethod` attribute.)
> {: @en}
Ich habe den [Wiki-Artikel](https://wiki.selfhtml.org/HTML/Formulare/Form) angepasst und einen expliziten Hinweis auf das mögliche Weglassen aller Attribute geschrieben (ist redundant, aber m. M. n. wichtig).
Gruß
Julius