Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> preg_match
akurczyk
post
Post #1





Grupa: Zarejestrowani
Postów: 201
Pomógł: 5
Dołączył: 15.07.2008
Skąd: Kłodzko

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


Jak zrobić aby w tym warażeniu można było używać tylko małych znaków?
  1. <?php
  2. preg_match("/^[a-z0-9]$/D", $_POST['login']);
  3. ?>


I jeszcze jedno co jest z tym wyrażeniem przechodzi nawet jeśli podam sfddsafre2e32?
  1. <?php
  2. preg_match("/^[a-zA-Z0-9.-_]+@[a-zA-Z0-9.-_].[a-z]{2,4}$/D", $_POST['e-mail']);
  3. ?
  4. ?>


Ten post edytował akurczyk 9.08.2008, 10:29:28


--------------------
Pozdrawiam
Aleksander Kurczyk
Porady dla webmasterów
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
wipo
post
Post #2





Grupa: Zarejestrowani
Postów: 856
Pomógł: 19
Dołączył: 30.08.2005
Skąd: 100lica

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


tylko male znaki i cyfry
  1. <?php
  2. preg_match("/^[a-z0-9]$/", $_POST['login']);
  3. ?>

a z tym drugiem to sprobuj tak:
  1. <?php
  2. preg_match("/^([a-zA-Z0-9.-_]+)@([a-zA-Z0-9.-_]+).[a-z]{2,4}$/", $_POST['e-mail']);
  3. ?>


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





Grupa: Zarejestrowani
Postów: 201
Pomógł: 5
Dołączył: 15.07.2008
Skąd: Kłodzko

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


a jak sprawdzić poprawność imienia i nazwiska?
chodzi mi o to że mają być 2-4 wyrazy w dwóch ostatnich może występować -.


--------------------
Pozdrawiam
Aleksander Kurczyk
Porady dla webmasterów
Go to the top of the page
+Quote Post
wipo
post
Post #4





Grupa: Zarejestrowani
Postów: 856
Pomógł: 19
Dołączył: 30.08.2005
Skąd: 100lica

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


  1. <?php
  2. preg_match('/([A-Za-z]+) ([A-Za-z]+) ([A-Za-z-]+) ([A-Za-z-]+)/',$string)
  3. ?>


Ten post edytował wipo 9.08.2008, 11:37:45


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





Grupa: Zarejestrowani
Postów: 201
Pomógł: 5
Dołączył: 15.07.2008
Skąd: Kłodzko

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


ale żeby minimalnie były 2 wyrazy a maksymalnie 4


--------------------
Pozdrawiam
Aleksander Kurczyk
Porady dla webmasterów
Go to the top of the page
+Quote Post
wipo
post
Post #6





Grupa: Zarejestrowani
Postów: 856
Pomógł: 19
Dołączył: 30.08.2005
Skąd: 100lica

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


To wg mnie preg_matchem sie tego zrobic nie da
ja bym zrobil tak
[code]
$wpisane=explode('-',$_POST['imie_nazwisko']);
if (count($wpisane)<2 || 4count($wpisane)>4) die('za duza ilosc parametrow');
for($x=0;$x<count($wpisane);$x++){
if ($x<2)
if (!preg_match('/[A-Z]([a-z]+)/',$wpisane[$x])) die('zly parametr '.$x);
else
if (!preg_match('/([A-Za-z\-]+)/',$wpisane[$x])) die('zly parametr '.$x);
}
die('dobrze');
[/php]

powinno dzialac ale pisalem to z palca wiec moze byc jakis blad


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





Grupa: Zarejestrowani
Postów: 201
Pomógł: 5
Dołączył: 15.07.2008
Skąd: Kłodzko

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


a w jednym preg_match?


--------------------
Pozdrawiam
Aleksander Kurczyk
Porady dla webmasterów
Go to the top of the page
+Quote Post
wrzasq
post
Post #8





Grupa: Zarejestrowani
Postów: 206
Pomógł: 18
Dołączył: 6.03.2006
Skąd: Szczecin

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


pierwszy problem - w pierwszym wyrazeniu musi być po prostu plus, wasze wersje dopasowuja jedynie jeden znak:

  1. <?php
  2. preg_match('/^[a-z0-9]+$/', $_POST['login']);
  3. ?>


imie i nazwisko:
  1. <?php
  2. preg_match('/^([A-Z][a-z]+) ([A-Z][a-z]+)( ([A-Z][A-Za-z-]+)){0,2}$/', $string);
  3. ?>


--------------------
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: 19.08.2025 - 21:46