Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][HTML]Gdzie przechowywane są zmienne, wysyłane za pomocą formularz metodą POST
smarcz
post
Post #1





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 12.05.2005

Ostrzeżenie: (0%)
-----


Problem jest następujący. Gdzie przechowywane są zmienne wysłane z formularza metodą POST i jak je usunąc? unset nic nie pomaga!! (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

  1. <FORM name="f1" METHOD="POST" ACTION="<?php echo $PHP_SELF ?>">
  2. <INPUT TYPE="HIDDEN" NAME="action" VALUE="d4">
  3. <input type="text" name="zmienna">


Problem polega na tym, że wypełnione pola formularza zostają przekzazane do fukcji php która sprawdza poprawność wypełnionego formularza (np. czy wszystkie wymagane pola zostały wypełnione).

Skrypt je sprawdza i jeżeli nie ma żadnych błędów wywołuje kolejną funkcję zawierającą nowy formularz do wypełnienia.

Problem pojawia się w tym momecie, kiedy te pola formularzy mają taką samą nazwę.

Może przedstawie algorytm działania
wszystko dzieje się w funkcji switch

1) Wypełnienie formularza (Krok_1)
2) Przekazanie danych do skryptu sprawdzającego (Dodaj_1)
3) Analiza wypełnienia -> kiedy pojawią się puste pola skrypt wywołuje funkcję Krok_1 z zaznaczonymi polami które nie zostały poprawnie wypełnione.
4) Zapisanie zgromadzonych danych do bazy danych MySQL
5) Wywołanie funkcji wypełnienia kolejnego formularza (Krok_2)

Ten sam algorytm dotyczy funkcji Krok_2.

W funkcjach tych mam zdefioniowaną obsługę błędów. Jeżeli funkcja dodaj znalazła pole nie wypełnione przekazuje informacje o błędzie w zmiennej i wywołuje ponownie funkcję krok_1(ze zmienna).
W plikach tych mam wprowadzone warunki wyświetlania pól za pomocą
  1. if($error==1){ wyświetlam kod z błędem i pustym polem input }
  2. elseif($zmienna=="warunek"){ wyswietlam pole z wstawiąną wartością value=<?echo $wartosc;?>}
  3. else{ normalny wygląd z pustym polem bez value }


Użytkownik wypełnia pola formularza krok_1 wywołuje funkcje dodaj_1 i otwiera funkcję krok_2 - tu już niektóre pola są wypełnione - A tak ma nie być!!!

Zastosowanie unset w dodaj_1 - nic nie pomaga
Zastosowanie $_POST = array(); w dodaj_1 - także nic nie daje?

Co z tym zrobić??
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.09.2025 - 18:12