> For the complete documentation index, see [llms.txt](https://usermanual.ergonode.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://usermanual.ergonode.com/ergonode-user-manual-pl/struktura-produktu/atrybuty/walidacja.md).

# Walidacja

{% hint style="warning" %}
Możesz ustawić walidator dla już istniejących atrybutów, jednak aby zapisać zmianę, wartość tego atrybutu we wszystkich produktach MUSI spełniać parametry walidacji. Jeśli tak nie jest, zostanie wyświetlony komunikat o błędzie.&#x20;
{% endhint %}

## Wprowadzenie

Walidatory pomagają chronić integralność danych, zapewniając, że tylko dane spełniające określone warunki są akceptowane w systemie. Na przykład przy atrybutach typu tekstowego możesz użyć wyrażeń regularnych (regex). Wyobraź sobie regex jako wzorzec sprawdzający, czy wartość atrybutu jest poprawna — na przykład czy adres e‑mail zawiera znak "@". To pomaga utrzymać dokładność i zapobiega błędom.

Różne typy atrybutów wymagają różnych reguł walidacji. Liczba może wymagać znajdowania się w określonym zakresie, natomiast obraz może mieć określone ograniczenia wymiarów lub rozmiaru. Walidatory pomagają więc utrzymać spójność pól danych.

**W Ergonode możesz ustawić walidację dla następujących typów atrybutów:**

| Typ atrybutu  | Dostępne walidatory                                                                                                                          |
| ------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| Plik          | <ul><li>Minimalna liczba plików</li><li>Maksymalna liczba plików</li><li>Maksymalny rozmiar pliku</li><li>Dozwolone rozszerzenia</li></ul>   |
| Galeria       | <ul><li>Minimalna liczba obrazów</li><li>Maksymalna liczba obrazów</li><li>Maksymalny rozmiar pliku</li><li>Dozwolone rozszerzenia</li></ul> |
| Obraz         | <ul><li>Maksymalny rozmiar pliku</li><li>Dozwolone rozszerzenia</li></ul>                                                                    |
| Numeryczny    | <ul><li>Wartość minimalna</li><li>Wartość maksymalna</li></ul>                                                                               |
| Cena          | <ul><li>Wartość minimalna</li><li>Wartość maksymalna</li></ul>                                                                               |
| Tekst         | <ul><li>Wyrażenie regularne (regex) z przykładami</li></ul>                                                                                  |
| Pole tekstowe | <ul><li>Lista zabronionych słów (limit 1000 znaków)</li></ul>                                                                                |
| Jednostka     | <ul><li>Wartość minimalna</li><li>Wartość maksymalna</li></ul>                                                                               |

## O regex (dostępne tylko w atrybucie tekstowym)

{% hint style="info" %}
W systemie możesz używać niektórych wstępnie zdefiniowanych wzorców regex, ale możliwe jest też użycie własnych. Aby użyć wzorców wstępnie zdefiniowanych, kliknij "Copy from regex templates".
{% endhint %}

Wyrażenia regularne, czyli regex, to zaawansowane narzędzia walidacji dla tekstu. Używają one określonej sekwencji znaków do zdefiniowania wzorca. Można je traktować jak rozbudowane „znajdź”, ale z większą precyzją i elastycznością. Oto jak używać regex do walidacji:

1. **Podstawowa walidacja**:
   * Załóżmy, że chcesz zwalidować dowolne trzyznakowe słowa. Użyjesz wzorca `\b\w{3}\b`. W tym wzorcu `\b` oznacza granice słowa, a `\w{3}` określa dokładnie trzy znaki słowa.
2. **Walidacja cyfr**:
   * Aby zwalidować dowolną sekwencję cyfr w tekście, użyj wzorca `\d`. Tutaj `\d` oznacza dowolną cyfrę, więc dopasuje dowolny ciąg zawierający pojedynczą cyfrę, np. 123, 4aa lub 678aaa9. Jeśli chcesz zwalidować ciąg kończący się cyfrą, użyj`\d$`, np.: something1.
3. **Walidacja adresów e‑mail**:
   * Jeśli walidujesz adresy e‑mail, możesz użyć czegoś takiego: `\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b`. Ten wzorzec sprawdza typową strukturę e‑mail, weryfikując znaki alfanumeryczne przed i po znaku "@".
4. **Walidacja dat**:
   * Aby zwalidować daty w formacie DD/MM/YYYY, możesz użyć `\b\d{2}\/\d{2}\/\d{4}\b`. Tutaj `\d{2}` znajduje dokładnie dwie cyfry, `/` to dosłowny ukośnik, a `\d{4}` szuka czterech cyfr.
5. **Elastyczna walidacja**:
   * Czasami możesz chcieć zwalidować słowa zaczynające się od określonej litery. Na przykład, aby znaleźć słowa zaczynające się na „a”, użyj `\ba\w*\b`. To szuka granic słowa (`\b`), litery "a" oraz dowolnej liczby znaków słowa (`\w*`).

Regex daje możliwość szybkiego wyszukiwania wzorców i wyodrębniania istotnych informacji z tekstu bez ręcznego przeszukiwania. Na początku mogą wydawać się skomplikowane, ale z praktyką stają się niezwykle przydatne do walidacji danych i przetwarzania tekstu. Zanurz się i odkrywaj nieograniczone możliwości!

## Dostępne szablony regex

W Ergonode znajdziesz kilka powszechnych wzorców regex już dostępnych dla twojej wygody.

**Oto lista:**

* EAN-13
* EAN-8
* Adres URL
* Ścieżka pliku
* Alfanumeryczne (bez spacji)
* Alfanumeryczne (ze spacją)
* Numeryczne (liczby całkowite)
* Numeryczne (oddzielane kropką)
* Numeryczne (oddzielane przecinkiem)

Aby z nich skorzystać kliknij ***Copy from regex templates*** i wybierz jeden z listy.

<figure><img src="/files/35c162fb8c3b07608b942196dbb226820133eb39" alt=""><figcaption></figcaption></figure>

## Niestandardowy komunikat o błędzie walidacji regex

Możesz ustawić niestandardowy komunikat o błędzie walidacji dla użytkownika.

<figure><img src="/files/d9495818cd745e4a4193edd082a0268d0445a830" alt=""><figcaption><p>Karta walidacji atrybutu tekstowego</p></figcaption></figure>

Komunikat zostanie wyświetlony w polu walidacji

<figure><img src="/files/0ef2748406c39521910fe595bed290eb715e7e8e" alt=""><figcaption><p>Karta walidacji atrybutu tekstowego - niestandardowy komunikat o błędzie walidacji</p></figcaption></figure>

w dymku narzędzia na [Katalog produktów (siatka produktów)](/ergonode-user-manual-pl/produkty/katalog.md)

<figure><img src="/files/b4e6549c006bb6d88105822d8405d1dc34abb654" alt=""><figcaption><p>Katalog produktów - niestandardowy komunikat o błędzie walidacji</p></figcaption></figure>

w [Atrybut kategorii](/ergonode-user-manual-pl/struktura-produktu/atrybuty-kategorii.md) (jeśli atrybut jest ustawiony jako jeden)

<figure><img src="/files/2742f42617c6c9bdcdeaf621add435cbfdfc0cd8" alt=""><figcaption></figcaption></figure>

w [Akcja masowa](/ergonode-user-manual-pl/produkty/katalog/akcja-masowa.md)

<figure><img src="/files/5aced49f34b12627b6f182d67436f2de64d98633" alt=""><figcaption></figcaption></figure>

i na karcie produktu.

<figure><img src="/files/b80aaf26e3bc07a5ecadb52dc148d24b4b56ed6e" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://usermanual.ergonode.com/ergonode-user-manual-pl/struktura-produktu/atrybuty/walidacja.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
