package main import ( "fmt" "net/http" ) type formExampleHandler int func (formHandler formExampleHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) { if r.Method != http.MethodPost { http.Error(w, "Only POST requests are allowed", http.StatusMethodNotAllowed) return } // Formulardaten parsen und Überprüfen, ob ungültige Formulardaten gesendet wurde if err := r.ParseForm(); err != nil { http.Error(w, "Fehler beim Parsen des Formulars", http.StatusBadRequest) return } // Überprüfen, ob leeres Formular gesendet wurde if len(r.PostForm) == 0 { http.Error(w, "Kein POST-Formular gesendet", http.StatusBadRequest) return } // Zugriff auf PostForm-Daten // string mit Wert des Feldes "name" name := r.PostForm.Get("name") // []string mit allen ausgewählten Werten der Checkbox "hobby" hobbies := r.PostForm["hobby"] // Ausgabe der Werte fmt.Fprintf(w, "Name: %s\n", name) fmt.Fprintf(w, "Hobbies:\n") for _, h := range hobbies { fmt.Fprintf(w, "- %s\n", h) } } func main() { var r formExampleHandler http.ListenAndServe("localhost:8080", r) }