ciao
@Alex21
. . . , poi nel foglio user li va ripreso dal db e fare il conteggio
E questa è una verifica lato server. Ok.
Io avevo supposto che fosse necessaria solo una verifica lato client e quindi proposto la semplice aggiunta di un attributo 'pattern' al campo input dell' utente. La verifica lato server non l'avevo presa in considerazione.
Dal link che ha messo Eugene il campo è questo:
<input type="text" id="fiscal_code_field" name="fiscal_code" size="16" value="" class="required invalid" maxlength="16" aria-required="true" required="required" aria-invalid="true">
Aggiungendo
pattern="[A-Za-z0-9]{16}" all' <input> si ottiene che il campo lascerà passare solo input con esattamente 16 lettere alfanumeriche, tutti gli altri casi verranno rifiutati lato client, cioè dal browser. L' attributo
maxlength="16" diventa obsoleto e non serve più.
Di più, tenuto conto che si tratta di un codice fiscale si può cercare di mettere nel pattern una espressione regolare che faccia passare solo i codici fiscali. Forse si riesce a trovare già fatta e sarebbe la cosa migliore a meno di sapere quali siano le esatte caratteristiche che deve avere la stringa codice fiscale e studiarci sopra l'espressiore regolare più adatta.
Il pattern è una caratteristica diciamo, avanzata dell' html5 che mi sembra non sia utilizzata come merita perché sfrutta le caratteristiche del browser moderni e richiede davvero poco codice per essere implementata.
Ciao!