Piszący przede mną poprzednicy powiedzieli już większość. Dodam od siebie tylko propo tych checkboxów... Moga one przybierać tylko nazwy, ale jako takich wartości nie posiadają. ustawienie opcji selected="selected" sprawia tylko, że jest ona domyślnie zaznaczona i nie przyjmuje wartości podanej w value a podczas przesyłu na serwer dostaje ona jak już wspomniano wartość "On". Brak zaznaczenia wyrzuca ją całkowicie ze zmiennej POST. Tak zresztą jak wszystkiego co nie jest zaznaczone lub jest puste. W pliku który masz ustawiony jako action formularza na starcie wyświetlaj sobie print_r($_POST) a sama zobaczysz co przechodzi i z jakimi wartościami

Teraz pobaw się w zaznaczanie pól, wpisywanie tam głupot lub pozostawianie ich pustych, zmianę name, id i value w kodzie formularza także. Sprawdzaj co się dzieje po kliknięciu "Wyślij". To Ci pomoże lepiej w zrozumieniu tego niż suche opisy na forum, które możesz brać "na wiarę". Odrobina samodzielności pod tym względem da Ci o wiele więcej niż jakikolwiek post tutaj w temacie.
Jedynie mogę się zgodzić z tym, że powinnaś się stosować do zaleceń kolegów: nie używaj polskich liter i znaków. Może podczas testowania to nie wyjdzie, ale już wynik funkcji eval() na jakiejś nazwie znakowo-liczbowej potrafił by Cię zdziwić. Dlatego używa się z reguły tylko liter i ewentualnie ograniczonej liczby znaków, które nie wywołują kłopotów

EDIT: Drugi akapit także Ciebie tyczy
wNogachSpisz... Pobaw się eval() nieco, a zrozumiesz czemu w nazwach pewne zapisy, znaki są unikane i wypracowano pewne standardy zapisu. Nikt nie zabrania stosować, to fakt. Ale są powody by jednak tego nie robić.