![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 9.10.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Tak jak w temacie potrzebuję porównać numer NIP z bazy z tym ktory jest przesyłany z formularza, w celu weryfikacji czy użytkownik znajduje się uż w systemie - jesli tak to błąd jeśli nie to sukces. Oczywiście nie mam z tym problemu:) Problem natomiast pojawia się w momencie gdy w bazie chcę przetrzymywać NIP w wersji oryginalnej - czyli z kreskami (w różnych układach - czyli tak jak wpisze uzytkownik) i następnie przy rejestracji kolejnego użytkownika chce porownać czy taki NIP nie znajduje się w bazie. Jak to zrobić? Próbowałem poprzez skrypt php: 1) pobranie wszystkich nip-ów z bazy do tablicy 2) usunięcie kresek z nipów 3) porownanie każdego elementu z tablicy z nipem z formularza Próbuje od kilku chwil zbudować zapytanie, które zniweluje powyższy sposób i rozwiąże problem poprzez jedno zapytanie. Proszę o pomoc w konstrukcji zapytania , jeśli jest to oczywiście rozwiązywalne. -------------------- Początki zawsze sa trudne...
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
1. w bazie zapisujesz nip bez zadnych kresek, spacji itp
2. przyd porownaniem, nip od usera sprowadzasz do postaci samych cyfr 3. i po problemie no i nie ma problemu zeby zrobic select na bazie where nip = $nip_bez_kresek Ten post edytował dr_bonzo 11.10.2007, 17:05:01 -------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 9.10.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Cytat 1. w bazie zapisujesz nip bez zadnych kresek, spacji itp Własnie tak już zrobiłem, a chce mieć z kreskami i dalej porównywać. -------------------- Początki zawsze sa trudne...
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
skoro tak zrobiles to zakładam ze masz jakis konkretny format kreskowania (skoro tak to sprowadzasz nip do tego formatui na tym się sprawa konczy). wystarczy wtedy jak wyzej sprowadzic nip usera do tego samego formatu kreskowania
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 4.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Ten sposób który proponuje kolega jest dobry ale jak bardzo chcesz możesz wykonać select'a na podstawie wyrażenia regularnego.
Tutaj http://dev.mysql.com/doc/refman/5.0/en/regexp.html znajdziesz info niestety nie podam Ci gotowej formułki ale jak to Ci się uda to będziesz miał zapytanie postaci:
I to powinno ci zwrócić wiersz.wskazujący użytkownika. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 9.10.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Dzięki devnul - w sumie naprowadzileś mie na rozwiązanie.
Nie potrzebnie kombinowałem z zapytaniem skoro mogę przetrzymywać bez kresek w bazie a w przypadku późniejszego wyświetlania "nakładać" na NIP maskę z kreskami i sprawa rozwiązana. ![]() -------------------- Początki zawsze sa trudne...
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 18.07.2025 - 05:34 |