Jak sprawdzić poprawność kodu pocztowego?
HTML + CSS, PHP + MySQL Aktualizacja: 27.07.2017

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.

<script type="text/javascript">
function sprawdzKodPocztowy(code) {
    if (!code.value.match(/^dd-ddd$/)) {
        code.value="";
        alert("Wprowadzono błędny kod pocztowy");
    }
}
</script>

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="kodpocztowy" onblur="sprawdzKodPocztowy(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="kod_pocztowy" 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.

<?php
$sprawdzKodPocztowy = $_POST['kodpocztowy'];
if ( !preg_match('/^[0-9]{2}-?[0-9]{3}$/Du', $sprawdzKodPocztowy) ) {
    print '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/.
dhosting

Autor: . Tagi: , , , .

Dodaj komentarz

2 komentarzy do "Jak sprawdzić poprawność kodu pocztowego?"

avatar
Sortuj wg:   najnowszy | najstarszy | oceniany
Comandeer
Gość

a nie ładniejsze jest wyrażenie postaci d{2}-d{3}? ;) + nowy atrybut [pattern] z HTML5 i wgl pozbywamy się JS-a.

Bartosz Stefanicki
Gość

Dzięki za propozycje, uzupełniłem poradę :-)

wpDiscuz