Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP]Checkbox resetuje się po wysłaniu formularza
Forum PHP.pl > Forum > Przedszkole
Suhar87
Witam!

Mam wielki problem i nie wiem jak go rozwiązać, próbuje, przeszukuje google i nic :/

Mianowicie mam formularz z polami checkbox. Niektóre pola oznaczają jakieś koszty rejestracji. Przez to że jest ich sporo dodałem przycisk "OBLICZ CENĘ"
Wszystko jest ok poza jednym. Udało mi się zrobić tak że po kliknięciu i wysłaniu formularza do funkcji zliczania ceny pola które były zaznaczone zostają zaznaczone.
Zrobiłem to tak:
  1. <?php echo $_POST['ostow_r']=='tak'? ' checked':''; ?>


Problem w tym że niektóre pola są również wyłączone (disabled). Podczas rejestracji można je włączyć, zaznaczyć ale po wykonaniu funkcji zliczania ceny resetują się. Nie wiem za nic jak zrobić tak jak z zaznaczeniem, żeby również jeśli podczas wykonania funkcji było aktywne takie zostało.

Macie jakieś pomysły?
Z góry dziękuję
Geston
Oblicz cenę z pomocą JS bez przesyłania formularza, zaznaczenie checkboxów automatycznie pokaże/zmieni cenę, pozostanie Ci tylko wysłanie formularza już z danymi do przeróbki.
Suhar87
No właśnie w tym problem że nie znam JS :/ Myślę za to że jest prosty sposób na to żeby aktywne pola pozostały aktywne. Zresztą gdy np. ktoś nie uzupełni wszystkich wymaganych pól i strona zgłosi błędy sytuacja jest taka sama. Wszystko zostaje a pola aktywować trzeba ponownie więc i tak sposób z JS nie rozwiązuje tego :/
Geston
Czyli na stronie z formularzem są checkboxy, niektóre są disabled, podczas zaznaczania czegoś niektóre checkboxy stają się aktywne? Aktywne dopiero na następnej stronie czy jeszcze na tej pierwszej, jeżeli tak to jakim sposobem na nie coś odziałuje żeby stały się aktywne? JS może się sprawić w takim razie na owej drugiej stronie, na podstawie tego czy coś innego jest zaznaczone/niezaznaczone, aktywne/nieaktywne - coś się wtedy dzieje. Nie jest to trudne.
Suhar87
http://testowa4.imed.pl/rejestracja

Wszystko odbywa się na tej stronie. Chodzi głównie o sekcję "Opcje uczestnictwa". Pracuje już nad wersją z JS bo widzę że jest to nic trudnego. Ale opcja błędnie wypełnionego formularza niestety zmusza mnie do rozwiązania mojego problemu :/
ghost1511
Podczas powrotu do strony formularza ( po wyliczeniu ceny ) zwróć (np w tablicy) jakie pola były zaznaczone i wykorzystaj te informacje przy odtwarzaniu formularza.
Suhar87
Hmmm, na prawdę nie ma sposobu na zmianę formuły PHP
  1. <?php echo $_POST['ostow_r']=='tak'? ' checked':''; ?>

tak żeby oprócz zapamiętywania zaznaczenia, zapamiętywała również stan aktywny/wyłączony? Chodzi o to czy nie ma sposobu zastąpienia "checked"?

Nikt nie ma pomysłu? sad.gif

W skrócie, wiele już przeczytałem i nie mogę znaleźć formuły PHP która potrafiłaby aktywować pole. Znam taką która może je zaznaczyć ale takowej aktywującej nie udało mi się znaleźć.

Przy wypełnianiu formularza pola aktywuję w taki sposób:
  1. onclick="this.form.elements['czlonekzja_r'].disabled = !this.checked;"

Gdy to pole zaznaczę, jeśli ktoś wypełni błędnie formularz i nie zostaje on przesłąny tylko wczytany ponownie do poprawy, to pole pozostaje zaznaczone dzięki formule
  1. <?php echo $_POST['ostow_r']=='tak'? ' checked':''; ?>

Najważniejsze pytanie jak to połączyć.... Jeśli ktoś wie że się tego nie da zrobić proszę o informację bo już powoli tracę nadzieję, a wydawało się to proste...
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.