Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Walidacja
motorolka24
post 5.05.2007, 00:51:20
Post #1





Grupa: Zarejestrowani
Postów: 90
Pomógł: 0
Dołączył: 21.04.2007

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


Czesc. Mam taki problem odnośnie sprawdzania błedów przy formularzu. Jeśli wprowadze sama cyfre albo jakiś inny znak to wyskakuje bład, ale jeśli oprócz cyfry i znaku dam jakąś litere to już mi przechodzi skrypt, tak jakby były to same litery. A chodzi o to żeby przeszło gdy bedą wpisane tylko litery

  1. <?php
  2. if(preg_match('/^[a-zA-Z]$/', $name)) { }
  3. else { echo "<p>Nieprawidłowe dane</p>"; 
  4.  }
  5. ?>



Wie ktoś może co jest nie tak??
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
GrZyB997
post 5.05.2007, 01:31:17
Post #2





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 18.12.2006

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


Cytat(motorolka24 @ 5.05.2007, 01:51:20 ) *
Czesc. Mam taki problem odnośnie sprawdzania błedów przy formularzu. Jeśli wprowadze sama cyfre albo jakiś inny znak to wyskakuje bład, ale jeśli oprócz cyfry i znaku dam jakąś litere to już mi przechodzi skrypt, tak jakby były to same litery. A chodzi o to żeby przeszło gdy bedą wpisane tylko litery

  1. <?php
  2. if(preg_match('/^[a-zA-Z]$/', $name)) { }
  3. else { echo "<p>Nieprawidłowe dane</p>"; 
  4.  }
  5. ?>

Wie ktoś może co jest nie tak??


Sprobój tak:

  1. <?php
  2. if(preg_match('/^Wd_$/', $name)) {
  3.  echo('Podane dane są nieprawidłowe!');
  4. } else { }
  5. ?>


Pisałem z głowy ale powinno wyglądać to miejwiecej tak, jeżeli w stringu $name znajdzie sie coś innego niż Litery wyświetli podany komunikat, jeżeli będa same litery skrypt nie wykona żadnej operacji winksmiley.jpg

Pozdrawiam
Go to the top of the page
+Quote Post
Kicok
post 5.05.2007, 07:59:05
Post #3





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


Cytat
ale jeśli oprócz cyfry i znaku dam jakąś litere to już mi przechodzi skrypt, tak jakby były to same litery.


To ciekawe, bo wyrażenie które podałeś nie powinno przepuszczać niczego dłuższego niż 1 znak. Jeśli chcesz tym walidować dłuższe napisy użyj znaku + lub * w zależności co chcesz osiągnąć:
  1. <?php
  2. if(!preg_match('/^[a-zA-Z]+$/', $name)) {
  3. echo('<p>Nieprawidłowe dane</p>');
  4. }
  5. ?>


--------------------
"Sumienie mam czyste, bo nieużywane."
Go to the top of the page
+Quote Post
misiek172
post 5.05.2007, 11:10:59
Post #4





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

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


hmm a nie lepiej zrobić validację od razu w JS? wtedy nie bedzie musiala sie przeladowywac strona, a jeśli juz tak bardzo chcesz w PHP to uzyj AJAXa smile.gif

w JS możesz od razu ustawic ze znaki nie chciane wogole nie bede sie wstukiwac do inputa.


--------------------
zmoderowano - waga i rozmiar
Go to the top of the page
+Quote Post
motorolka24
post 5.05.2007, 13:04:45
Post #5





Grupa: Zarejestrowani
Postów: 90
Pomógł: 0
Dołączył: 21.04.2007

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


Działa tak jak napisal Kicok. Dzieki! A tak jescze odnośnie wypowiedzi miska172. Jakbym zrobił walidacje tylko w JS, a ktos by wyłaczył sobie obsługe JS w przegladarce to tak wszystkie błedne dane przechodzą blink.gif
Go to the top of the page
+Quote Post
dr_bonzo
post 5.05.2007, 13:46:05
Post #6





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Walidacja w PHP jest obowiazkowa, walidacja w JS ulatwia zycie userowi.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
GrZyB997
post 5.05.2007, 13:57:20
Post #7





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 18.12.2006

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


Jeżeli dasz tylko walidacje JS wystarczy wyłączyć javascript w przeglądarce albo przechwycic nagłówki i już można wstrzyknąc nieporządane znaki winksmiley.jpg
Go to the top of the page
+Quote Post
misiek172
post 6.05.2007, 08:51:25
Post #8





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

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


no to tak jak mówi @dr_bonzo, daj i w JS i w PHP


--------------------
zmoderowano - waga i rozmiar
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 Wersja Lo-Fi Aktualny czas: 15.07.2025 - 14:52