Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    filtrare input form di tipo array

    Buongiorno,
    ho creato un form che contiene degli input di tipo text con due name differenti, diciamo 'parametro1' e 'parametro2'. In pratica ci sono n input con name="parametro1" e n input con name="parametro2".

    Ho letto nella documentazione PHP che quando si passano array via form si può usare la funzione filter_input inserendo come argomento FILTER_REQUIRE_ARRAY; ho usato questo filtro in combinazione con FILTER_SANITIZE_STRING.

    Siccome il primo array contiene degli indirizzi email, se volessi fare anche la validazione delle email potrei scrivere tutto in un solo comando usando filter_input?

    È il modo corretto di procedere per il controllo dei dati inseriti dagli utenti in questo caso?

    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2016
    Messaggi
    783
    Dipende, se nell'array hai tutti campi dello stesso tipo è un approccio che può andare bene.

    Se però hai campi diversi (tipo una string, un url e un indirizzo email) allora non puoi fare così, altrimenti php ti passerà tutti i campi sotto lo stesso filtro, e quindi vedrà come corretto soltanto un tipo di campo, mentre darà errore negli altri.

    Guardati anche questa funzione che può esserti utile: http://php.net/manual/en/function.fi...nput-array.php

    Se poi hai necessità particolari puoi vederti qualche libreria per la validazione, ma non mi sembra questo il caso.

    Ti lascio un paio di link giusto se per curiosità vuoi dare un'occhiata:

    https://packagist.org/packages/symfony/validator
    https://packagist.org/packages/zendf...zend-validator

  3. #3
    ok se ho capito bene potrei usare anche filter-input-array usando come secondo parametro un array con chiavi (secondo l'esempio che ho fatto) 'parametro1' e 'parametro2' e con valori i filtri / flags differenziati a seconda di quello che mi serve. Mi sembra che però non possa per esempio mettere due filtri (tipo FILTER_SANITIZE_STRING e FILTER_VALIDATE_EMAIL) nella stessa chiamata della funzione.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.