![]() |
Funkcja mail() - odświeżanie strony - Wersja do druku +- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl) +-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www) +--- Dział: Programowanie, Bazy danych (https://www.webmastertalk.pl/forum-programowanie-bazy-danych) +--- Wątek: Funkcja mail() - odświeżanie strony (/thread-funkcja-mail-od%C5%9Bwiezanie-strony) |
Funkcja mail() - odświeżanie strony - pawstrze - 09-12-2012 Cześć, mam takie pytanie. Mam sobie formularz kontaktowy na stronie głównej. Chcę, żeby po kliknięciu Wyślij, przerzuciło mnie ponownie na tę samą stronę... Korzystam z metody POST, pole action puste. Chodzi o to, że jak wyświetli mi się po wysłaniu wiadomości ponownie strona z formularzem, to w sytuacji, gdy użytkownik kliknie "odśwież" w przeglądarce, może wysłać wiadomość jeszcze raz... I moje pytanie jest takie jak sie przed tym bronić...? z góry dzięki, pawstrze RE: Funkcja mail() - odświeżanie strony - mateo - 09-12-2012 Po wysłaniu maila przekieruj na stronę, gdzie poinformujesz o poprawnym wysłaniu maila. Z niej możesz dać odnośnik do formularza lub na główną. RE: Funkcja mail() - odświeżanie strony - pawstrze - 09-12-2012 (09-12-2012, 23:27)mateo napisał(a): Po wysłaniu maila przekieruj na stronę, gdzie poinformujesz o poprawnym wysłaniu maila. Z niej możesz dać odnośnik do formularza lub na główną. Haha, dość chałupniczo, ale OK ![]() RE: Funkcja mail() - odświeżanie strony - Intelactive - 10-12-2012 A nie lepiej po prostu po wysłaniu wywalić echo? I na co Ci cookie do tego? RE: Funkcja mail() - odświeżanie strony - andrzejhi - 10-12-2012 Najlepiej poszukaj w necie jak zabezpieczyć formularz przed ponownym wysłaniem. Jest na to kilka sposobów. Ciastka są jednym z takich sposobów a dokładniej to otwarcie sesji. Możesz otworzyć sesję i w niej zapisać jakąś losową liczbę. Tą samą liczbę zapisujesz w ukrytym polu formularza. Odbierając dane z formularza sprawdzasz czy liczba z sesji jest taka sama jak ta w formularzu. Jeśli tak to wysyłasz maila, ustawiasz nową liczbę w sesji i wstawiasz ją do formularza. Wtedy odświeżenie strony nie spowoduję ponownego wysłania formularza. RE: Funkcja mail() - odświeżanie strony - mateo - 10-12-2012 Ciastka to nie sesje... RE: Funkcja mail() - odświeżanie strony - andrzejhi - 12-12-2012 ehe to utrzymaj sesje bez ciastek :-). Ale w zasadzie masz rację. |