![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 316 Pomógł: 0 Dołączył: 5.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
mam problem z instrukcją warunkową która sprawdza czy
- jest wypełnione pole (nip i regon) albo pesel - nawias w tym wypadku oznacza ze te pola maja byc wypelnione razem w przeciwnym razie sam pesel - numeryczna postac nip, pesel, regon - dlugosc nip to 10 znakow, dlugosc pesla to 11 znaków a dlugosc regonu to 9 znaków moja propozycja to
domyslam sie ze zaproponujecie krotszy zapis z !empty ale ten tez powinien dzialac wszystko wyglada logicznie ale w rzeczywistosci jezeli wpiszę za regon i nip wartosci '5' i '5' to formularz to przepuszcza :/ prosze o pomoc.. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 252 Pomógł: 2 Dołączył: 4.12.2004 Skąd: Skierniewice Ostrzeżenie: (10%) ![]() ![]() |
Trochę odbiegając od tematu na tej stronie masz funkcje do walidacji numerów nip, pesel i regon. Może Ci się przydadzą.
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 13.06.2002 Skąd: mmz Ostrzeżenie: (0%) ![]() ![]() |
Jejku strasznie długi i niezrozumiały ten kod
moja propozycja po łepkach
Może być błąd bo szybko pisałem musisz poddać w funkcjach dane do validacji a to bardziej skomplikowane bo długość to nie wszystko (i str_len tu niewystarczy) poszukaj artykułów o tym jakie warunki mają te dane spełniać i co jak obliczyć pogrzebałem jeszcze troszeczkę i znalazłem to napewno ci sie przyda Dla identyfikatora NIP wagi wynoszą kolejno 6,5,7,2,3,4,5,6,7 Modulo 11 (i nie odejmujemy już tej wartości od 10!) Przykład dla numeru identyfikacyjnego NIP 768-000-24-66 6 5 7 2 3 4 5 6 7 -> wagi * 7 6 8 0 0 0 2 4 6 -> nr NIP (bez cyfry kontr.) --------------------- suma= (6*7+5*6+7*8+2*0+3*0+4*0+5*2+6*4+7*6)= = ( 42+ 30+ 56+ 0+ 0+ 0+ 10+ 24+ 42)= 204 204 mod 11 = 6 ----> cyfra kontrolna Dla identyfikatora REGON 7-mio cyfrowego wagi wynoszą kolejno 2,3,4,5,6,7 Dla identyfikatora REGON 9-cio cyfrowego wagi wynoszą kolejno 8,9,2,3,4,5,6,7 sumę dzielimy Modulo 11 Przykład dla numeru identyfikacyjnego REGON 590096454 8 9 2 3 4 5 6 7 -> wagi * 5 9 0 0 9 6 4 5 -> nr REGON (bez cyfry kontr.) ------------------- suma= (8*5+9*9+2*0+3*0+4*9+5*6+6*4+7*5)= = ( 40+ 81+ 0+ 0+ 36+ 30+ 24+ 35)= 246 246 mod 11 = 4 ----> cyfra kontrolna Uwaga: warto zauważyć, że wynik dzielenia modulo 11 może wyjść 10. Ponieważ cyfry "10" brak (a znaku X jak w numerze ISBN się tu nie stosuje) to w tym przypadku jako cyfrę kontrolną należy przyjąć 0. Ten post edytował planet_x 3.08.2006, 19:34:59 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 11:53 |