Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    VALIDARE UN CODICE FISCALE - riassunto+funzione

    Salve,

    stasera avevo la necessità di validare un codice fiscale..venuto a conoscenza che le reg exp non sono sufficienti causa carattere di parità in fondo al cod.fiscale, ho fatto una ricerca su google (mitico motore) e ho trovato una discussione del forum di html.it:

    http://forum.html.it/forum/showthrea...postid=3685886

    la versione javascript della suddetta soluzione non l'ho testata, però mi serviva la traduzione in VBscript, ma quella postata da br1 non l'ho proprio capita (perchè erano omesse le cose?) e cmq non mi funzionava... quindi ho tradotto (aiutandomi anche con la versione di br1) quella javascript e questo è il risultato:

    codice:
    function isCodiceFiscale(valore)
    
    dim nTempNum,nAppoNum,i,szTempCodFisc,szLastChar,szValued,szInValued
    
    szCodFisc=valore
    
     if len(trim(szCodFisc))<16 then 
     isCodiceFiscale=false
     
      else
      
      szCodFisc =ucase(szCodFisc)
      szLastChar = right(szCodFisc,1)
      szTempCodFisc =left(szCodFisc,len(szCodFisc)-1)
      nTempNum = 0
      i = 1
      
      while i<=15
      	'I DISPARI
    	szValued="B1A0KKPPLLC2QQD3RRE4VVOOSSF5TTG6UUH7MMI8NNJ9WWZZYYXX"
    	szInValued=mid(szTempCodFisc,i,1)
        nAppoNum = instr(szValued,szInValued)
        nTempNum = nTempNum + ((nAppoNum-1) and &H7FFE) / 2
        i = i + 1
        if i<=15 then
         
    	 'I PARI
    	szValued="A0B1C2D3E4F5G6H7I8J9KKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ"
        szInValued=mid(szTempCodFisc,i,1)
        nAppoNum = instr(szValued,szInValued)
        nTempNum =  nTempNum + ((nAppoNum-1) and &H7FFE) / 2
        i = i + 1
    	end if
      wend
    
       nTempNum = (nTempNum mod 26)
       szValued="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
       szValued= mid(szValued,nTempNum+1, 1)
       if szValued=szLastChar then 
       isCodiceFiscale=true
       else 
       isCodiceFiscale=false
       end if
    end if
    end function
    
    response.Write isCodiceFiscale("tutocodicefiscale")
    e finalmente dandogli il mio codicefiscale non mi ha dato errore...ora spero che a qualcuno serva e che qualcuno la testi meglio di me e/o la corregga in caso di errori



    ps: mi scuso con gli autori del citato post per la mia scopiazzatura

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Attenzione che il codice fiscale non è solo calcolato: in caso di omonimia (anche non esatta) tra persone nate nello stesso comune lo stesso giorno, il codice fiscale è assegnato d'imperio dal ministero...

    Roby

  3. #3
    Originariamente inviato da Roby_72
    Attenzione che il codice fiscale non è solo calcolato: in caso di omonimia (anche non esatta) tra persone nate nello stesso comune lo stesso giorno, il codice fiscale è assegnato d'imperio dal ministero...

    Roby
    a me sembra che la routine di santino non *calcoli* il codice fiscale, ma lo *validi* solo formalmente. quindi - paradossalmente - se io compilo una anagrafica mettendo i miei dati e il *tuo* codice fiscale, la routine di validazione formale mi dice che è tutto ok.

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Se è il ministero ad assegnarti un codice fiscale, non è validabile dalla routine e quindi nemmeno calcolabile nel caso lo faccia lo script. Questo volevo dire.

    Roby

  5. #5
    Ti sbagli. E' validabile comunque, visto che la *forma* del codice fiscale è sempre quella (3 alfa per cognome, 3 alfa per nome, 2 num per anno, 1 alfa per mese, 2 num per giorno, 1alfa+3num per il luogo, 1 alfa per il codice di controllo - che dipende dalla combinazione dei 15 car precedenti).

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Che io sappia è il codice di controllo che viene modificato, non le lettere del nome e del cognome che contribuirebbero ad ottenerlo...
    Son passati parecchi anni però, potrei anche sbagliarmi.

    Roby

  7. #7
    Optime è esatto, questo script dovrebbe validare solo la forma, non controlla che i dati anagrafici inseriti al momento della registrazione combacino col codice fiscale...sinceramente a meno che non mi venga richiesto espressamente, dubito che implementerò la cosa...

    ah, ps: mica è mio lo script


    cmq leggevo anche per internet che ci sono un pò di casini per questa validazione del cf o mi sbaglio?

  8. #8
    direi che la validazione non comporta problemi (quella è e quella rimane). problematica è la generazione, come giustamente ha detto robbbby.

  9. #9
    Originariamente inviato da optime
    direi che la validazione non comporta problemi (quella è e quella rimane). problematica è la generazione, come giustamente ha detto robbbby.
    infatti non ci pensavo nemmeno a genere codici fiscali per far quello ho trovato un programmino carino carino che te lo scrive, però sicuramente il problema di roby sarà presente anche in quel programma, perchè se si esce dalla logica matematica per affidarsi all'arbitrarietà umana, come può la macchina essere efficacie? anche in matrix quasi quasi perdevano

  10. #10
    Utente di HTML.it L'avatar di viki1967
    Registrato dal
    Feb 2003
    Messaggi
    1,757
    Scusate ma questa non è valida come validazione?
    A S P : tutto il resto è noia...
    L I N U X : forse mi "converto"...

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.