Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Odświeżanie listy <select>
Forum PHP.pl > Forum > Przedszkole
Villanelle
Witam,

mam formularz z jedną listą typu <select>, na której wyświetlane są nazwy stanowisk. Obok tej listy jest <input> w który można wpisać stanowisko, którego jeszcze nie ma na liście. Po zatwierdzeniu formularza wykonywany jest zapis do bazy wraz z INSERTem nowego stanowiska. I póki co, jeśli formularz jest dobrze wypelniony to nie ma problemu, bo nie trzeba wracać z powrotem do formularza, ale jeśli użytkownik popelni bląd to wyświetla się komunikat z przyciskiem wstecz, któy ejst na żywca zaimplementowany jako wstecz przeglądarki. Niestety w takim przypadku lista nie zostanie odświeżona, ale w bazie już jest zapisany nowy rekord. Dodanie ponowne nowej nazwy stanowiska poskutkuje blędem, że taka nazwa już istnieje na liście i nie można jej dodać.

Jak odświeżyć listę <select> albo np. caly formularz bez utraty wpisanych w input'y danych. Proszę o jakieś najprostsze wskazówki rozwiązania tego problemu.

Z góry dziękuję.
tomateusz
może najprościej będzie sprawdzić przed INSERTem, czy dane stanowisko znajduje się już w DB?
Inti
Nim zapiszesz błędny wpis do bazy wpierw to sprawdź, bowiem nie ma sensu tego robić skoro są to dane przez ciebie nietolerowane.

Albo tak jak tomateusz pisze sprawdzaj czy masz wpis już w bazie. Zależy jakie informacje podajesz i co uważasz za błąd.
Vilanelle
Tu nie chodzi o będny INSERT bo wszystko jest obsużone OK.

Tylko o oto jak pokazać ten nowo wprowadzony wpis na tym <select> jeśli użytkownik da 'wstecz' ma wszystkie inputy uzupelnione tak jak sobie to uzupelnil, ale <select> jest dalej nieuaktualniony.
tomateusz
Bardzo prosta sprawa, kiedy już wykona się INSERT robisz przekierowanie w PHP przez header("location: "); na stronę na której uzytkownik wypełniał formularz.

Strona się odświeża - problem znika smile.gif
Villanelle
Próbowalam z tym header, ale cos jest nie tak, bo ogolnie formularz jest w jednym pliku i do niego podpiety jest plik do którego przechodzi się w przypadku potwierdzenia formularza (tu też jest owy INSERT) jak również w przypadku blędu. Jeśli wystąpi bląd można wrócić za pomocą przycisku 'Wstecz' (z podpietą po prostu funkcja wstecz tak jak w przeglądarce). No i w tym przypadku jakoś ten header nie bardzo się sprawdzil.
Gość
my chsemy konsert tomateusz w iarnobrzegu w koszele na św barbary w tarnobrzegu party.gif
Gość
Goście

Pomógł:






my chsemy konsert tomateusz w iarnobrzegu w koszele na św barbary w tarnobrzegu
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.