# URL-ellenőrzés a Gravity Formsban

> Hogyan ellenőrzi a bővítmény az URL-eket, mit tegyél, ha érvényes cím mégis hibát ad, és mely szűrőkkel írhatod át az ellenőrzést.

Az URL-ellenőrzés a biztonságot szolgálja, és a hibákat előzi meg: csak olyan adat jut át, amilyet a bővítmény vár. Minél szűkebb a megengedett adatok köre, annál kisebb az esélye a problémának.

## Hogyan ellenőrzi a bővítmény az URL-eket

Két módszer fut egymás után:

- Az URL elejének ellenőrzése: `http://` vagy `https://` kell, hogy legyen.
- RFC szerinti ellenőrzés a PHP `filter_var()` függvényének `FILTER_VALIDATE_URL` szűrőjével.

```php
$is_valid = ( strpos( $url, 'http://' ) === 0 || strpos( $url, 'https://' ) === 0 );
$is_valid = $is_valid && filter_var( $url, FILTER_VALIDATE_URL ) !== false;
```

## Ha egy érvényes cím mégis hibát ad

1. Először győződj meg róla, hogy a PHP-verzió naprakész, mert az ellenőrzés a PHP szűrőjére épül.
2. Ha frissített PHP mellett is marad a hiba, valószínűleg az RFC-szabvány korlátja okozza. A szabvány nagyon szigorú, és nem fogad el néhány valóban használt címet. Például a héber karaktereket tartalmazó címeket sem. Ilyenkor kikapcsolhatod az RFC-ellenőrzést a témád vagy egy bővítményed kódjában:

```php
add_filter( 'gform_rfc_url_validation', '__return_false' );
```

3. Másik megoldás, hogy saját ellenőrzési logikát írsz a `gform_is_valid_url` szűrővel.

## Szűrők

| Szűrő | Mire való |
|---|---|
| `gform_rfc_url_validation` | Az RFC-ellenőrzés ki- és bekapcsolása. |
| `gform_is_valid_url` | Saját URL-ellenőrzési logika megadása. |
