Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyrażenia regularne
darektbg
post 14.10.2006, 11:41:00
Post #1





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 25.09.2006

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


Witam !
Tworząc pewien projekt natchąłem się na pewien problem w wyrażeniami regularnymi.
  1. <?php
  2. if(!ereg("^[A-Z][[:lower:]]$", $_POST['nazwisko']))
  3. $blad="Pierwsza litera nazwiska powinna być duża, każda następna mała, np.: Nowak,
     Kowalski"
    ;
  4. else
  5. {
  6. //dodaje do bazy
  7. }
  8. ?>

Według tego kodu jeżeli "nazwisko" składa się z pierwszej litery dużej, każda następna to mała, to dodaje imie do bazy, w przeciwnym wypadku ustawia zmienną $blad, a następnie ją wyświetla. Kod działa poprawnie, tz. gdy zmienna $_POST['nazwisko'] ma wartość np.: Jan imie zostaje dodane do bazy. Problem pojawia się gdy zmienna $_POST['nazwisko'] zawiera polskie znaki, np.: Ćwierz. Wtedy nazwisko już nie zostaje dodane do bazy, tylko ustawiana jest zmienna $blad.

Pozdrawiam
Darektbg


--------------------
skocz.org - system skracania linków
Go to the top of the page
+Quote Post
qlash
post 14.10.2006, 12:01:21
Post #2





Grupa: Zarejestrowani
Postów: 73
Pomógł: 0
Dołączył: 29.08.2006

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


  1. <?php
  2. if(!ereg("^[A-ZĘÓĄŚŁŻŹĆŃ]{1}[a-zęóąśłżźćń]{2,}$", $_POST['nazwisko']))
  3. echo "Pierwsza litera nazwiska powinna być duża, każda następna mała, np.: Nowak, Kowalski";
  4. ?>


edit powyzszy zapis łyknie każde nazw zaczynajace sie wielka litera, po ktorym MUSZA nastapic minimum 2 małe..

Ten post edytował qlash 14.10.2006, 12:02:36
Go to the top of the page
+Quote Post
Adiasz
post 14.10.2006, 13:22:04
Post #3





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 28.02.2004

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


Cytat(darektbg @ 14.10.2006, 12:41:00 ) *
Według tego kodu jeżeli "nazwisko" składa się z pierwszej litery dużej, każda następna to mała, to dodaje imie do bazy, w przeciwnym wypadku ustawia zmienną $blad, a następnie ją wyświetla. Kod działa poprawnie, tz. gdy zmienna $_POST['nazwisko'] ma wartość np.: Jan imie zostaje dodane do bazy. Problem pojawia się gdy zmienna $_POST['nazwisko'] zawiera polskie znaki, np.: Ćwierz. Wtedy nazwisko już nie zostaje dodane do bazy, tylko ustawiana jest zmienna $blad.

wszystkie regexpy ([0-9],alnum itp) nie lapia plskich znakow wiec musisz je dodac do zbioru jak to pokazane jest w poscie wyzszym
Go to the top of the page
+Quote Post
darektbg
post 14.10.2006, 13:53:08
Post #4





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 25.09.2006

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


Witam !
Sprawdzone, działa, dzięki winksmiley.jpg

Pozdrawiam
Darektbg


--------------------
skocz.org - system skracania linków
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: 14.08.2025 - 10:28