Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript]sprawdzanie poprawności danych przy ich wpisywaniu
erjot90
post
Post #1





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 19.06.2009
Skąd: Piotrków Tryb

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


Witam,

mam pytanko do Was. Czy mógłby mi ktoś pomóc jak napisać w javie sprawdzanie danych w formularzu np. mam kryteria do hasła ze musi być dłuższe niż 6 znaków to żeby przed przesłaniem do stronki która to ma sprawdzić w php poprawność wprowadzonych danych od razu wywalała błąd typu: Hasło jest nie poprawne. Mam nadzieje że rozumiecie o co mi chodzi.

Dodam że jestem początkującym programistą w javie a na stronach znalezionych w google nic nie moge zakumać sad.gif


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
Andaramuxo
post
Post #2





Grupa: Zarejestrowani
Postów: 150
Pomógł: 15
Dołączył: 18.03.2009

Ostrzeżenie: (10%)
X----


W javie czy javascript? Jak masz formularz to zrób go w php i sprawdzaj dł. znaków tak:
Kod
if (strlen($_POST['password'])>6) {
wysyła dane }
else {
hasło musi mieć co najmniej 6 znaków
}


--------------------
Go to the top of the page
+Quote Post
erjot90
post
Post #3





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 19.06.2009
Skąd: Piotrków Tryb

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


w php wiem jak to napisać. Chodzi mi o to zeby podczas wpisywania mi sprawdzało długość hasła i od razu wyświetlał się "błąd" w razie napisania małej liczby znaków lub np. napis "dobre hasło" kiedy użytkownik wpisze np. 7 znaków.


--------------------
Go to the top of the page
+Quote Post
Andaramuxo
post
Post #4





Grupa: Zarejestrowani
Postów: 150
Pomógł: 15
Dołączył: 18.03.2009

Ostrzeżenie: (10%)
X----


Aha, jak bez przeładowywania strony to chyba AJAX, ale mogę się mylić.


--------------------
Go to the top of the page
+Quote Post
erix
post
Post #5





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




Cytat
Dodam że jestem początkującym programistą w javie a na stronach znalezionych w google nic nie moge zakumać

A którego JDK używasz? snitch.gif



Cytat
małej liczby znaków lub np. napis "dobre hasło" kiedy użytkownik wpisze np. 7 znaków.

google: form validation

edit@~slightyboy: a nie mógł sam poszukać...?


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

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
erjot90
post
Post #6





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 19.06.2009
Skąd: Piotrków Tryb

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


a wiesz może jak to napisać w AJAX? albo masz godne polecenia linki w tym temacie?


--------------------
Go to the top of the page
+Quote Post
slightyboy
post
Post #7





Grupa: Zarejestrowani
Postów: 52
Pomógł: 12
Dołączył: 12.07.2007

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


Po co w tym momencie angażować AJAX? On przyda się dopiero wtedy kiedy będziesz chciał sprawdzić, czy zadeklarowana przez użytkownika nazwa lub adres email nie istnieją już w bazie danych. Co do walidacji formularza, za pośrednictwem Google znajdziesz wiele tutoriali i poradników, ale w skrócie (olbrzymim) wygląda to tak:

Kod HTML:
  1. <input type="password" name="password" onChange="validatePassword(this);" />


Kod java script:
Kod
function validatePassword(w){
  if(w.value.length <= 6)
    alert('Hasło jest zbyt krótkie!'); // Tutaj umieścić możesz dowolną akcję (wyświetlenie błędu, okienka etc.)
}
Go to the top of the page
+Quote Post
erjot90
post
Post #8





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 19.06.2009
Skąd: Piotrków Tryb

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


slightyboy możesz napisać jak właśnie sprawdzić przy pomocy ajaxa czy w bazie nie ma już takiego użytkownika?

i aha jak zrobić żeby ten komunikat wyświetlał się obok inputa?

Ten post edytował erjot90 22.06.2009, 23:40:58


--------------------
Go to the top of the page
+Quote Post
slightyboy
post
Post #9





Grupa: Zarejestrowani
Postów: 52
Pomógł: 12
Dołączył: 12.07.2007

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


Kolego, tutaj to już mały kod nie wystarczy, ale mogę podpowiedzieć jak zrobić to krok po kroku (kodu nie przestawię):

1. Skrypt/plik (PHP) który zapytaniem MySQL sprawdza czy użytkownik/email istnieje w bazie. Skrypt zwraca rezultat w postaci XML, JSON, a nawet zwykłego tekstu (ja ostatnio preferuję XML tongue.gif).
2. Skrypt AJAX (warto skorzystać z jakiegoś frameworka, chociażby z polskiego mintAjax - www.mintajax.pl, w dokumentacji znajdziesz wszystko na temat pobierania), który pobiera rezultat z pliku PHP (punkt pierwszy) i odpowiednio reaguje (np. alert('Użytkownik istnieje!')).
3. Na koniec wszystko to podpinasz pod formularz (albo w onSubmit, albo tworzysz oddzielny button do sprawdzania unikalności nazwy/adresu email).

W razie czego służę pomocą na PW (aczkolwiek kodu nie zamierzam pisać za kogoś). smile.gif

Natomiast co do drugiego pytania:
- obok inputa umieść np. element liniowy SPAN (<span></span) o unikalnym identyfikatorze.
- zamiast "alert('Hasło jest zbyt krótkie!');" umieść:

Kod
document.getElementById('unikalnyIdElementuSPAN').innerHTML = 'Hasło jest zbyt krótkie!';

Oczywiście można to również zrobić przy wykorzystaniu DOM, ale w tak prostym przykładzie można posłużyć się "mniej eleganckim" rozwiązaniem (aczkolwiek równie efektywnym).
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 Aktualny czas: 22.08.2025 - 08:19