Jak sprawdzić poprawność kodu pocztowego?

Bartosz

Bartosz Stefanicki 24 lutego 2023

Jak sprawdzić poprawność kodu pocztowego?

Tworząc stronę internetową często powstaje konieczność dodania formularza do kontaktu, zbierania danych, rejestracji. W takim formularzu na całość składa się nierzadko kod pocztowy. Jak zweryfikować czy użytkownik podał poprawny kod pocztowy, czy zachował jego poprawną formę?

Kod pocztowy, inaczej pocztowy numer adresowy to w Polsce ciąg cyfr. Dodawany do adresu, by ułatwiać sortowanie przesyłek. Wprowadzony 1 stycznia 1973 roku. Pierwsza cyfra określa okręg pocztowy, a cały PNA jest przypisany do urzędu pocztowego, albo do poszczególnych ulic i domów.

1. Walidacja za pomocą JavaScript

Poniżej kod JavaScript, który weryfikuje czy użytkownik wprowadził format CC-CCC, gdzie C to cyfra.

function checkPostalCode(code) {
    const regex = /^[0-9]{2}-[0-9]{3}$/;

    if (! regex.test(code.value)) {
        alert('Wprowadzono błędny kod pocztowy.');
        code.value = '';
    }
}

Ostatnią rzeczą jest kawałek kodu HTML - formularz który wysyła dalej dane, wprowadzone przez użytkownika.

<form action="" name="form" method="post">
<input type="text" name="postal_code" onblur="checkPostalCode(this)" />
</form>

2. Walidacja za pomocą HTML5

Najszybszym sposobem jest skorzystanie z HTML5, to rozwiązanie podsunął Comandeer w komentarzu. Do pola formularza należy dodać nowy atrybut pattern. Pozwala określić wyrażenie regularne, który musi być spełnione podczas wpisywania tekstu przez użytkownika. Przy nieprawidłowym wypełnieniu formularza, nie zostanie on wysłany.

<form action="" name="form" method="post">
<input type="postal_code" pattern="^[0-9]{2}-[0-9]{3}$">
</form>

Zgodnie z powyższym przykładem kod pocztowy musi składać się z dwóch cyfr, potem myślnika i trzech cyfr, np. 00-999.

3. Walidacja za pomocą PHP

Na podstawie powyższego kodu HTML walidacja tym razem za pomocą PHP.

$postalCode = $_POST['postal_code'];

if (! isset($postalCode) || ! preg_match('/^[0-9]{2}-?[0-9]{3}$/Du', $postalCode)) {
    echo 'Wprowadzono błędny kod pocztowy.';
}

Jeśli nie znasz kodu pocztowego dla określonej lokalizacji, ulicy i miasta, możesz go szybko znaleźć na stronie http://poczta-polska.pl/kody/.

Warto zobaczyć

Szukasz hostingu?

Jest dużo firm oferujących hosting, ale którą wybrać? Przedstawiamy zestawienie najciekawszych propozycji i ranking hostingów (Wrzesień 2023).

Data publikacji: 26.12.2013 r. Tagi: formularze, html, php, skrypty.

6 komentarzy


© 2005-2023 itporady.pl. Wszystkie prawa zastrzeżone.

Używamy informacji zapisanych za pomocą cookies i podobnych technologii m.in. w celach reklamowych, statystycznych oraz dostosowania naszych serwisów do indywidualnych potrzeb użytkowników.