![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 255 Pomógł: 0 Dołączył: 1.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
Mam takie pytanko mógłby mi ktoś podpowiedzieć w jaki sposób zabezpieczyć formularz kontaktowy aby po kliknięciu wyślij nie wysyłał emaila bez wypełniania wszystkich pól
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 94 Pomógł: 10 Dołączył: 20.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 225 Pomógł: 18 Dołączył: 30.06.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
To problem JavaScript, w HTML tego nie zrobisz
-------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 255 Pomógł: 0 Dołączył: 1.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
moge uzyc javascript ale trzeba wiedzieć jeszcze jak temu pytam tu na forum
![]() |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 274 Pomógł: 54 Dołączył: 2.05.2006 Skąd: Nadarzyn Ostrzeżenie: (0%) ![]() ![]() |
do walidacji formularzy za pomoca js polecam cos gotowego np. http://www.jsvalidate.com/
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 145 Pomógł: 1 Dołączył: 12.07.2006 Ostrzeżenie: (10%) ![]() ![]() |
Nie wiem co robię źle ale po wgraniu plików na serwer JS jest nieaktywne jak zapiszę stronę z dema na dysk to działa .
![]() |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 113 Pomógł: 11 Dołączył: 20.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli chcesz tylko sprawdzić czy pola nie są puste to wystarczy coś takiego:
Funkcja ta sprawdza czy pola są wypełnione, jeśli są odblokowuje przycisk jeśli nie to przycisk zostaje zablokowany. Trzeba by tylko zdecydować kiedy to ma być sprawdzane. -------------------- "Wszyscy wiedzą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on to właśnie robi."
Albert Einstein |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 145 Pomógł: 1 Dołączył: 12.07.2006 Ostrzeżenie: (10%) ![]() ![]() |
Jak Twoją funkcję podstawić do formularza ?:
Chciałbym by było tak jak w tym przykładzie z walidatora JS - dynamicznie i interaktywnie. Może którychś plików js nie zaincludowałem ? Ale próbowałem na różne sposoby. |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 113 Pomógł: 11 Dołączył: 20.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli chodzi o moją funkcję to najprościej jest chyba dać ją w zdarzenie OnMouseOver np do przycisku lub jego okolicy. W tedy w momencie najechania myszką nastąpi sprawdzanie i przycisk stanie się aktywny albo nie. Można to też dać jako OnChange lub OnKeyUp do pól które maja być wypełnione.
A jak wysyłasz ten formularz bo nie widzę w nim żadnego submita? -------------------- "Wszyscy wiedzą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on to właśnie robi."
Albert Einstein |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 145 Pomógł: 1 Dołączył: 12.07.2006 Ostrzeżenie: (10%) ![]() ![]() |
Mógłbyś to na moim formularzu wstawić? W JS nie jestem biegły
![]() |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 113 Pomógł: 11 Dołączył: 20.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Skrypt JavaScript
Będzie to mnie więcej tak w wersji z OnKeyUp: Lub tak w wersji z OnMouseOver: Skrypt w obu przypadkach jest taki sam. Nie jest to zbyt genialne rozwiązanie ale działa. Nie zapominaj jednak o sprawdzeniu czy te pola nie są puste również w skrypcie php. Na potrzeby zademonstrowania tego dopisałem do twojego fragmentu formularza button. -------------------- "Wszyscy wiedzą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on to właśnie robi."
Albert Einstein |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 690 Pomógł: 81 Dołączył: 6.04.2005 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
weź pod uwagę 2 rzeczy:
1. walidacja w JS nie będzie działała jak wyłączysz obsługę JS 2. spamboty z zasady nie używają JS -------------------- |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 145 Pomógł: 1 Dołączył: 12.07.2006 Ostrzeżenie: (10%) ![]() ![]() |
W wersji z OnMouseOver nie działa po wypełnieniu pól jaki i przy pustych polach - przycisk wyślij jest nieaktywny. W wersji OnKeyUp: formularz działa ale jak w jednym polu np jak poniżej usunę onKeyUp="sprawdzanie_danych ()" - to pole wyslij jest niaktywne nawet po wypełnieniu wszystkich pół.
Bełdzio JS nie służy mi jako wyrocznia, tyko info dla użytkowników którzy nei wypełnili wszystkich pół. W PHP i tak sprawdzam czy sa wymagane pola. Ten post edytował oi. 25.11.2010, 12:37:47 |
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 113 Pomógł: 11 Dołączył: 20.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
bełdzio: Jeśli obsługa javy będzie wyłączona to akurat w tym przypadku nie tyle walidacja nie działa co przycisk się nie odblokuje, bo domyślnie jest zablokowany. Ale oczywiście się z tobą zgadzam dlatego powinno być jeszcze sprawdzanie w PHP.
oi.: Jeśli usunąłeś z jednego pola onKeyUp="sprawdzanie_danych ()" to logicznym chyba jest że musisz wyrzucić również sprawdzanie tego pola ze skryptu, czego pewnie nie zrobiłeś. Z tego co podałeś widzę że nie sprawdzasz textarea, więc warunek w JS będzie wyglądał tak:
Czemu w wersji z OnMouseOver nie działa przyznam się że nie wiem sprawdzałem to u siebie i działało ale zapewne zależy to od przeglądarki i trzeba by to w związku z tym dopracować. -------------------- "Wszyscy wiedzą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on to właśnie robi."
Albert Einstein |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 145 Pomógł: 1 Dołączył: 12.07.2006 Ostrzeżenie: (10%) ![]() ![]() |
Rzeczywiście wystarczy w if zmienić warunek :-) Co do tego onMouseOver to jeżeli nie działa na wszystkich przeglądarkach to jest nie dopuszczalne bo nie wyobrażam sobie by zwykły user czy tym bardziej klient biznesowy nie mógł dodać treści przez błąd skryptu weryfikującego.
Mam prośbę czy możecie zobaczyć www.jsvalidate.com/demo jak to jest z tym gotowym skryptem walidacji ? Wygląda i sprawuje się na tej stronie dobrze, ale jak chcę go wdrożyć do siebie to zachowuje się tak jakby nie było tego JS na stronie. Pobrałem http://www.jsvalidate.com/download/get/ zainkludowałem JS na stronie . Zauważyłem, że w kodzie źródłowym na demo jest : natomiast jak to demo zapisze na dysk to w źródle jest dużo więcej odnośników do skryptów JS |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 13.07.2025 - 15:24 |