![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 10.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Zauważyłem, że w niektórych skryptach po błędnym wypełnieniu formularza możemy kliknąć w przeglądarce 'wstecz' i poprzednio wpisane dane nadal będą się tam, znajdować, bez potrzeby wpisywania wszystkiego od początku. Napisałem swój własny formularz kontaktowy w oparciu o sesje (zabezpieczenie przed botami), jednak w moim wypadku bo kliknięciu 'wstecz' formularz jest pusty. |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 247 Pomógł: 11 Dołączył: 5.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Więc zrobiłeś coś nie tak - pokaż kod
![]() |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 10.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Wiadomo - trochę po upraszczałem niektóre rzeczy, chodzi o to, aby pokazać, że uzupełniając formularz dowolnymi danymi i klikając 'wstecz' staje się on pusty.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 247 Pomógł: 11 Dołączył: 5.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
A gdzie zapisujesz do sesji wartości z formularza ?
np.
A w samym formularzu przecież też musisz nadać wartość polom, które mają mieć wartość z sesji: Ten post edytował wiewiorek 6.07.2010, 16:52:38 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 10.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Po prostu poucinałem te fragmenty w kodzie.
Formularz może przecież zwracać zawsze błąd, to tam nie jest ważne, chodzi o to, dlaczego po samym kliknięciu wstecz nie ma wpisanych wartości. Co ciekawe, pod Operą i Chrome działa dobrze, pod FF i IE nie. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
bo musisz dla każdego pola zapisać dane do sesji a potem odczytać z sesji, a tego nie zrobiłeś
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 247 Pomógł: 11 Dołączył: 5.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Czyli twierdzisz, że masz to co napisałem i że wyrzuciłeś je z powyższego kodu - czyli wyrzuciłeś to co najistotniejsze
![]() ![]() Ten post edytował wiewiorek 6.07.2010, 17:04:30 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 10.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Zmyliło mnie to, że niektóre przeglądarki (Opera, Chrome) zapamiętywały te wartości. Co zasugerowało mi, że problem leży bardziej po stronie przeglądarki i ewentualnego kodu HTML.
Oczywiście, wiedziałem o możliwości zapisywania i odczytywania z sesji, ale wydawało mi się to nieco na około, ale z tego co widać innego wyjścia nie ma. Dzięki ![]() ----- EDIT ----- Teraz jednak pojawił się nowy problem... Powiedzmy, że po poprawnym wysłaniu wiadomości wszystkie zmienne sesyjne będą niszczone, aby po ponownym wejściu pola były już czyste. Jednak, gdy użytkownik wypełni pola jakimiś danymi, kliknie wysyłanie formularza, skrypt zwróci komunikat, że np. wysyłanie nie powiodło się z powodu nie wypełnienia wszystkich pól. Następnie użytkownik wróci sobie na stronę główną, a potem ponownie do formularza kontaktowego to jego stare dane nadal będą się tam znajdować. Jak rozwiązać ten problem? Nie mogę przecież niszczyć sesji nawet po nieudanym wysyłaniu bo wtedy po kliknięciu 'wstecz' pola znowu będą puste. Ten post edytował 8rol 7.07.2010, 12:23:57 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 13:57 |