Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> zabezpieczenie przed ponownym wysłaniem formularza
chceBYCpro
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 24.06.2009

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


Witam,
interesuje mnie rozwiązanie, z którego korzystają fora takie jak phpbb; kliknięcie wstecz bądź F5 nie powoduje nowego wpisu do bazy a nawet nie pokazuje komunikatu o ponownym przesłaniu danych. proszę o pomoc, bo siedzę już dosyć długo nad tym...;/

PS nie chcę gotowca tylko pomysłu jak zrobić ewentualnie jakieś polecenia, które się przydadzą.

Ten post edytował erix 24.06.2009, 18:18:05
Powód edycji: [erix] co to ma do programowania obiektowego?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
singles
post
Post #2





Grupa: Zarejestrowani
Postów: 121
Pomógł: 26
Dołączył: 2.07.2007

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


Jedno z możliwych rozwiązań: Do formularza dokładasz ukryte pole z wygenerowanym losowym identyfikatorem. Równocześnie ustawiasz go w sesji. W skrypcie obsługującym formularz sprawdzasz, czy identyfikator przesłany POSTem razem z treścią wiadomości zgadza się z tym w sesji. Jeśli tak, dodajesz/edytujesz rekord w bazie, co tam chcesz - równocześnie czyszcząc wpis w sesji. Następna próba obsłużenia tego samego formularza już się nie powiedzie, bo zmienne sesyjna będzie pusta.

Ten post edytował singles 24.06.2009, 18:30:05
Go to the top of the page
+Quote Post
batman
post
Post #3





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Jestem pewien, że ten temat już się przewijał na forum, ale dzisiaj pokłóciłem się z wyszukiwarką.
Robisz to tak:
1. form.html - tutaj masz formularz, który wysyłasz na handle.php.
2. handle.php - obsługa formularza, zapisanie danych, itd
3. Po obsłużeniu danych używasz funkcji header do przekierowania na stronę z podziękowaniami/formularzem/dowolną inną stronę.

Zabawa z sesjami, ciastkami, unikatowymi identyfikatorami to tylko zbędna zabawa, przez którą bardziej się narobisz.
Go to the top of the page
+Quote Post
nospor
post
Post #4





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




http://forum.php.pl/index.php?showtopic=44...t=0&start=0
i tyle w temacie
Go to the top of the page
+Quote Post

Closed TopicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 18:26