Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP]Formularz w formularzu
Forum PHP.pl > Forum > Przedszkole
Suhar87
Witam!

Mam pewien problem i nie wiem jaka jest jego ranga więc zaczynam od przedszkola smile.gif Otóż zajmuje się już gotowymi stronami a z PHP nie miałem wcześniej do czynienia więc uczę się metodą prób i błędów co zazwyczaj się udaje ale niestety nie tym razem :/

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ę
amii
Jak na moje to dopisz poprostu funkcję obliczającą cenę jako procedurę kliknięcia dla przycisku czy czegokolwiek...

Cytat
Niestety po dodaniu przycisku submit odwołującego się do funkcji oblicz() i tak po kliknięciu formularz zachowuje się jakbym uruchomił funkcję rejestru().


Bez kodu ciężko stwierdzić ale jeśli jako type dałeś submit to kliknięcie tego przycisiku powoduje uruchomienie wysłania formularza.
Damonsson
zamiast dla obliczania <input type="submit"... />
daj przykładowo <button></button>

i w JS wyłapuj $('button').click(function...
Suhar87
Cytat(amii @ 15.03.2014, 12:50:15 ) *
Jak na moje to dopisz poprostu funkcję obliczającą cenę jako procedurę kliknięcia dla przycisku czy czegokolwiek...

To wydaje się być jakiś rozwiązaniem tylko nic w google nie mogę znaleźć na temat procedur. Jaka jest ich budowa? Może być jakiś krótki przykład albo ramowa, prosta konstrukcja, powinienem już załapać i dostosować do siebie.
Cytat(Damonsson @ 15.03.2014, 12:54:27 ) *
i w JS wyłapuj $('button').click(function...

Niestety nie używamy na naszych stronach JS :/
Damonsson
  1. <input type="submit" name="rejestruj" />
  2. <input type="submit" name="oblicz" />

  1. if (isset($_POST["rejestruj"])){
  2. // jak kliknął rejestruj
  3. } else if (isset($_POST["oblicz"])){
  4. // jak kliknął oblicz
  5. }
Suhar87
Dzięki wielkie!!!

Jak najbardziej teraz działa jak należy!!!

Pozdrawiam!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.