Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Jak przekazać dalej wszystkie zmienne $_POST
Vasquez21
post 29.06.2011, 11:25:41
Post #1





Grupa: Zarejestrowani
Postów: 213
Pomógł: 0
Dołączył: 2.11.2004
Skąd: Jaworzno

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


Witam

Mam następującą sytuację.
Użytkownikowi pojawia się formularz w którym ma wiele pól typu input po zatwierdzeniu wszystkie dane wysyłane są metodą $_POST do popupa, w którym zczytuję je sobie, wyświetlam na ekranie i czekam na potwierdzenie.
W momencie kiedy użytkownik potwierdzi chciałbym jeszcze raz puścić pętlę po wszystkich przekazanych elementach i wpisać je do bazy.
Problem w tym, że po tym jak user naciśnie przycisk formularz jest przeładowywany a wcześniej przekazane dane znikają.

Wiem, że mogę to zrobić zapisując ponownie wszystkie dane i np. przypisując do ukrytych innput'ów. Zastanawiam się po prostu czy jest jakieś szybsze rozwiązanie.
Go to the top of the page
+Quote Post
gac3k
post 29.06.2011, 12:00:43
Post #2





Grupa: Zarejestrowani
Postów: 90
Pomógł: 8
Dołączył: 28.07.2009

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


serialize() i unserialize() albo zwyczajnie zapisz całą tablicę posta w sesji i jedziesz smile.gif

Ten post edytował gac3k 29.06.2011, 12:02:05
Go to the top of the page
+Quote Post
MateuszS
post 29.06.2011, 14:42:03
Post #3





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

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


Albo w ostateczności input hidden w drugim formularzu z wartością poprzedniego POSTa.


--------------------
O! Zimniok :P
Go to the top of the page
+Quote Post
erix
post 29.06.2011, 17:24:35
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
w drugim formularzu z wartością poprzedniego POSTa.

No tak, i dawaj dodatkowe, zbędne sprawdzanie poprawności.

Cytat
Wiem, że mogę to zrobić zapisując ponownie wszystkie dane i np. przypisując do ukrytych innput'ów. Zastanawiam się po prostu czy jest jakieś szybsze rozwiązanie.

Ja to realizuje w taki sposób - zważywszy na to, że żądań może być kilka (ktoś otworzy sobie kilka kart), to bezpośrednie wrzucanie do sesji odpada. Każda instancja u użytkownika nadpisze poprzednią.

Rozwiązaniem jest zserializowanie z asocjacją na unikalny token - przekazujesz przez np. GET identyfikator żądania i wtedy wystarczy sprawdzać, czy przed przetwarzaniem takowy występuje. Jeśli tak - wykonujesz zwyczajne przepisanie. [;


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

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
gac3k
post 29.06.2011, 22:40:34
Post #5





Grupa: Zarejestrowani
Postów: 90
Pomógł: 8
Dołączył: 28.07.2009

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


Cytat
Rozwiązaniem jest zserializowanie z asocjacją na unikalny token - przekazujesz przez np. GET identyfikator żądania i wtedy wystarczy sprawdzać, czy przed przetwarzaniem takowy występuje. Jeśli tak - wykonujesz zwyczajne przepisanie. [;


No to jak już tak sobie rozważamy smile.gif to sesji też możesz sobie ustalić unikalny token, i go sprawdzać, jednakże ciężko mi sobie w ogóle wyobrazić sytuację o której mówisz, bo dane w sesij byłyby zapisywane po wysłaniu formularza więc co ma tu do rzeczy otworzenie kilku kart smile.gif
Go to the top of the page
+Quote Post
erix
post 29.06.2011, 22:59:12
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Prosta sytuacja: otwieram w dwóch kartach ten sam formularz. Wypełniam jeden, nie czekam na wysłanie, wypełniam drugi i też wysyłam. W obu oknach jest prośba o potwierdzenie. Bez rozróżnienia na tokeny żądania, przetworzony zostanie wyłącznie ostatni formularz. KPW? wink.gif


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

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
gac3k
post 30.06.2011, 12:47:21
Post #7





Grupa: Zarejestrowani
Postów: 90
Pomógł: 8
Dołączył: 28.07.2009

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


KPW smile.gif , ale nie zmienia to faktu że możesz sobie stworzyć tablicę z kluczem asocjacyjnym w sesji, i będzie chyba nawet bardziej optymalnie niż taka serializacja.
Go to the top of the page
+Quote Post
erix
post 30.06.2011, 15:04:30
Post #8





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Ech, racja - za duży skrót myślowy. wink.gif


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

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 08:45