Hi,
die /> sind einfach nur XHTML. Das ist schon in Ordnung so.
Ansonsten hattest du recht.
Noch ein Gedanke ist, dass sich das hier beißt:
action="index.php?task=register" method="post">
task=register ist eine get-Variable.
versuch mal noch ein ein hidden-Field einzubauen.
<input type="hidden" name="task" value="register" />
und nur action="index.php" zu schreiben.
Ist dann vom Inhalt dasselbe, nur anders notiert. Vielleicht liegts daran.