Mam pewien problem i nie wiem jaka jest jego ranga więc zaczynam od przedszkola

Strona nad którą obecnie pracuję to formularz rejestracyjny. Jak wszystkie formularze posiada wiele pól z obsługą błędów (wymagane pola, wymagana ilość znaków itp.). Jest w nim jedna sekcja w której użytkownik zaznacza pola checkbox a każde z nich ostatecznie oznacza jakąś kwotę do zapłaty.
Dopiero po wypełnieniu POPRAWNIE formularza po naciśnięciu na przycisk rejestruj (submit) funkcja sprawdza błędy i jeśli wszystko jest ok zlicza ostateczną cenę i od razu przekierowuje do płatności. Wszystko gra tylko mój szef zażyczył sobie żeby obok przycisku REJESTRUJ był jeszcze jeden OBLICZ CENĘ... No i tu zaczyna się mój problem... Jak zrobić funkcję dodatkową która po naciśnięciu na button w odpowiednim miejscu zliczy aktualne zaznaczone pola checkbox ale nie sprawdzi reszty pól.
Co zrobiłem:
Skopiowałem funkcją rejestruj() jako funkcję oblicz() usuwając z niej wszystkie funkcje sprawdzanie błędów i inne zostawiając tylko linijki $kwota += .....;
Niestety po dodaniu przycisku submit odwołującego się do funkcji oblicz() i tak po kliknięciu formularz zachowuje się jakbym uruchomił funkcję rejestru().
Jak udało mi się (pewnie niepoprawnie) na dziko dodać formularz w formularzu który zlicza mi pięknie cenę nie przejmując się resztą formularza ale... wtedy przycisk odwołujący się do funkcji rejestruj() nie widzi pól checkbox z cenami....
Moje pytanie jaka jest zasada kiedy chce dodać dwa różne przyciski korzystające z części tych samych zmiennych żeby jeden nie wpływał na drugi?
Czekam na podpowiedzi lub prośby jakie linie kodu wkleić bo jest tego sporo dlatego nie chcę wszystkiego od razu wklejać, może ktoś da mi rozwiązanie, tutorial który mógłby mnie naprowadzić bo google nie dało mi takiej odpowiedzi.
Z góry dziękuję