Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> <<wstecz<< jestem tutaj >>nastepny>>, jak NIEresetowac zawartosci?
devint
post
Post #1





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 16.05.2005

Ostrzeżenie: (10%)
X----


hej

dokopalem sie do tysiaca sposobow jak resetowac zawartosc po wcisnieciu WSTECZ itp, ale mi chodzi o formularz w kilku etapach (3 i wiecej) z dosc duza iloscia okien typu input.

Jak to wszystko wrzucic do jakiegos cache zeby bedac w form 2 lub 3 swobodnie wrocic do 1 a pozniej ponownie do 3.

Jesli macie namiary na wlasciwe tutoriale to bardzo prosze, bo caly czas reset i reset bleeeeee

milego dnia
dev
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Takie rzeczy do raczej po stronie serwera robisz np. w php. Trzymasz wszystkie dane pol w sesji i w zaleznosci na jakiej stronie jestes, takie pola wypelniasz z sesji.

Jesli nie oto ci chodzilo, daj znac. jesli oto, to tez daj znac to przeniose na php smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
devint
post
Post #3





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 16.05.2005

Ostrzeżenie: (10%)
X----


Chyba TAK - O to mi chodzilo - juz w trakcie pisania zaczalem myslec sesje sesje sesje

Po prostu moje mysli kierowaly sie do javascript jako uzupelnianie formularza i chyba chcialem przekombinowac, jednak jesli ktos wie jak to zrobic bez sesji to z checia uslysze.

pozdr

A wiec przenosze na php
---
nospor
Go to the top of the page
+Quote Post
defrost
post
Post #4





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 24.03.2003
Skąd: Warszawa

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


Borykam się z podobnym problemem. Trzymam wszystkie zmienne w sesji jednak edycja juz wstawionego rekordu do formularza jest niemożliwa, gdyż dane te są zarejestrowane w sesji.
Formularz ma 3 strony, na 4 jest podsumowanie. Stwierdzam błąd na stronie np. 2, przechodze tam i wstawiam nowe dane - na podsumowaniu wyświetla mi nadal stare dane.

Czy ktoś wie jak to rozwiązać?
Go to the top of the page
+Quote Post
devint
post
Post #5





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 16.05.2005

Ostrzeżenie: (10%)
X----


musialbys chyba ponownie rejestrowac te zmienna sesji ktora edytowales, tak mi cos swita, ale pewnie jak tutejsi guru zobacza te metne tlumaczenie to Ci wyprostuja smile.gif

pozdr
Go to the top of the page
+Quote Post
NoiseMc
post
Post #6





Grupa: Zarejestrowani
Postów: 398
Pomógł: 10
Dołączył: 24.11.2004
Skąd: Łódź

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


Ja bym zrobił tak:

Obiekt przechowujący tablicę asocjacyjną np.:
  1. <?php
  2. $arrForm['txtImie'] = 'Imię';
  3. ?>


Za każym wysłaniem odserializowanie obiektu zakodowanego base64 i umieszczenie w polach formularza wartości z tablicy przechowywanej w obiekcie ewentualnie wrzucenie do tablicy danych z wyslanego formularza po czym serializacja, zakodowanie i wrzucenie ciągu base64 w ukryte pole formularza, które jest przesyłane pomiędzy stronami
(rozwiązanie to w ASP.NET jest znane jako __VIEWSTATE)

Ten post edytował NoiseMc 30.11.2005, 22:24:56


--------------------
Go to the top of the page
+Quote Post
defrost
post
Post #7





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 24.03.2003
Skąd: Warszawa

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


Wszystko brzmi magicznie.
Może przedstawię kod jak chciałem to zrobić to będzie łatwiej.
Na przykładzie 3 stron, 2 mają formularz a trzecia wyświetla wprowadzone dane i wprowadza je do bazy MySQL.

Strona index.php
Na początku includuję plik session.php:
  1. <?php
  2. $txt1 = $_GET['txt1'];
  3. $txt2 = $_GET['txt2'];
  4. $txt3 = $_GET['txt3'];
  5. $txt4 = $_GET['txt4'];
  6. $txt5 = $_GET['txt5'];
  7. ?>

Potem w treści strony:
  1. <form name="txt01" action="form.php" method="GET">
  2. <p>Imie i nazwisko<br>
  3. <input type="text" name="txt1" /><br>
  4. Stanowisko:<br>
  5. <input type="text" name="txt2" /><br>
  6. Firma:<br>
  7. <input type="text" name="txt3" /><br>
  8. <input type="submit" value="dalej" /></p>
  9. </form>

Na stronie form.php mam takie coś:
  1. <?php
  2. include("session.php");
  3. echo $txt1."<br>";
  4. echo $txt2."<br>";
  5. echo $txt3."<br>";
  6. ?></p>
  7. <form name="txt02" action="form2.php" method="GET">
  8. Dane - <input type="text" name="txt4" /><br>
  9. Dane - <input type="text" name="txt5" /><br>
  10. <input type="submit" value="dalej" />
  11. </form>

Na koniec na stronie form2.php:
  1. <?php
  2. include("session.php");
  3. echo $txt1."<br>";
  4. echo $txt2."<br>";
  5. echo $txt3."<br>";
  6. echo $txt4."<br>";
  7. echo $txt5."<br>";
  8. ?></p>



Prosze używać odpowniego bbcode
poprawiam
---
nospor

OK. Następnym razem będe uważał.
Niestety dane wprowadzone na stronie index.php pojawiają się jako wprowadzone na stronie form.php jednak kiedy wypełnię form na stronie form.php i przejdę na strone form2.php ślad po nich zanika.

Czy sesja nie powinna ich trzymać? A może jest jakiś inny posób na to, żeby wypełnić formularz na stronie np. index.php i po przejściu przez wszystkie podstrony wrócić do strony index.php i zmienić/poprawić te dane?

Dodam, że docelowo pól formularza będzie blisko 100 sad.gif

Dzięki za wszelkie sugestie.

Ten post edytował defrost 7.12.2005, 14:45:39
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 19.08.2025 - 11:45