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

    Funzioni di Validazione (IVA - E-Mail - Codice Fiscale - Carta di Credito)

    Vi allego quì alcune funzioni utili.


    Funzione di Validazione Partita IVA
    codice:
    Public Function CONTIVA(NX)
    	For e = 1 To 11
        	If Asc(Mid(NX, e, 1)) < 48 Or Asc(Mid(NX, e, 1)) > 57 Then
            	CONTIVA = 1
    	        Exit Function
        	End If
    	Next
    	T2 = 0
    	For e = 1 To 9 Step 2
        	T2 = T2 + CCur(Mid(NX, e, 1))
    	Next
    	For e = 2 To 10 Step 2
        	T1 = CCur(Mid(NX, e, 1)) * 2
    	    If T1 >= 10 Then T1 = T1 - 9
        	T2 = T2 + T1
    	Next
    	If (T2 Mod (10)) = 0 Then T1 = 0 Else T1 = 10 - (T2 Mod (10))
    	If CCur(Mid(NX, 11, 1)) = T1 Then CONTIVA = 0 Else CONTIVA = 1
    End Function
    Funzione di Validazione Carte di Credito
    codice:
    FUNCTION validCCNumber (ccnumber) 
    ccnumber = cleanCCNum( ccnumber) 
    IF ccnumber = "" THEN 
    	validCCNumber = FALSE 
    ELSE 
    	isEven = False 
    	digits = "" 
    	FOR i = Len( ccnumber ) To 1 Step -1 
    		IF isEven THEN 
    			digits = digits & CINT (MID (ccnumber, i, 1)) * 2 
    		ELSE 
    			digits = digits & CINT (MID (ccnumber, i, 1)) 
    		END IF 
    		isEven = (Not isEven) 
    	NEXT 
    	checkSum = 0 
    	FOR i = 1 TO Len( digits) STEP 1 
    		checkSum = checkSum + CINT (MID (digits, i, 1)) 
    	NEXT 
    	validCCNumber = (( checkSum Mod 10) = 0 ) 
    END IF 
    END FUNCTION 
    
    FUNCTION cleanCCNum (ccnumber) 
    	FOR i = 1 TO Len(ccnumber) 
    		IF isNumeric(MID(ccnumber, i, 1)) THEN cleanCCNum = cleanCCNum & MID (ccnumber, i, 1) 
    	NEXT I
    END FUNCTION
    Funzione di Validazione Codice Fiscale
    codice:
    Function CONTFIS(CF)
    	Pari1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    	Pari11 = "0123456789"
    	dispari = "0100050709131517192102041
    820110306081214161022252423"
    	lastletter = Mid(CF, 16, 1)
    	a = 0
    	For i = 2 To 14 Step 2
        	cfp = Mid(CF, i, 1)
    	    If InStr(Pari1, cfp) > 0 Then
        	    a = a + InStr(Pari1, cfp) - 1
    	    Else
        	    a = a + InStr(Pari11, cfp) - 1
    	    End If
    	Next
     	b = 0
    	ric = 0
    	For i = 1 To 15 Step 2
        	cfp = Mid(CF, i, 1)
        	If InStr(Pari1, cfp) > 0 Then
            	ric = InStr(Pari1, cfp) * 2 - 1
    	        b = b + CCur(Mid(dispari, ric, 2))
        	Else
            	ric = InStr(Pari11, cfp) * 2 - 1
    	        b = b + Ccur(Mid(dispari, ric, 2))
        	End If
    	Next
    	c = a + b
    	d = Int(c / 26)
    	e = c - d * 26
    	finale = Mid(Pari1, e + 1, 1)
    	If finale = lastletter Then
        	CONTFIS = 0 'ok
    	Else
        	CONTFIS = 1 'err
    	End If
    End Function
    Funzione di Validazione Indirizzi e-Mail
    codice:
    Function Valida_Email(Var_Email)
    'Se Torna False la Mail è Valida
    'Se torna True la Mail Non è valida
    
    bolError = False
    
    If len(Var_Email) < 10 Then
    	bolError = True
    ElseIf len(Var_Email) >= 10 Then	
    	x = 1
    	y = 0
    	bolNotExt = False
    	Do Until x = Len(Var_Email)
    		If Mid(Var_Email,x,1) = "@" Then
    			y = y + 1
    		Else
    			y = y
    		End If
    		x = x + 1
    	Loop
    	If Len(Mid(Var_Email,(InStrRev(Var_Email, ".") + 1),Len(Var_Email))) < 2 Then
      		bolNotExt = True
    	End If  
    	If y <> 1 Or bolNotExt Then
    		bolError = True
    	End If
    End If
    Valida_Email=bolError
    END FUNCTION

  2. #2
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Grazie, utilissime!

  3. #3
    Originariamente inviato da wegawhite
    Grazie, utilissime!

  4. #4
    Ottimo!!!
    Me le salvo tra le mie utility.
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  5. #5
    Molto utili veramente, anche se per la validazione di un indirizzo e amil si possono sfruttare anche altre tecniche come la validazione tramite espressioni regolari:
    Codice PHP:
    <?php

    function is_email($email) {

    if(
    eregi("^([a-z0-9_\.-])+@(([a-z0-9_-])+\\.)+[a-z]{2,6}$"trim($email)))
    return 
    1;
    else
    return 
    0;

    }

    /* ESEMPIO DI UTILIZZO, SI SUPPONE CHE $_POST['Email']
    CONTENGA L'INPUT DELL'UTENTE */
    if(is_email($_POST['Email'])) {

    echo 
    "Email corretta";

    } else {

    echo 
    "Email non corretta";

    }

    ?>

  6. #6
    grazie
    Ci sedemmo dalla parte del torto visto che tutti gli altri posti erano occupati."
    [Bertolt Brecht]

  7. #7
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Per tutte quelle validazioni possono essere usate le espressioni regolari.

    Roby

  8. #8
    si, si possono usare anche espressioni regolari x qualsiasi validazione.

  9. #9

    navigando qua e la ...

    eccone una per la validità dell'indirizzo email
    Purtroppo non mi ricordo dove l'ho trovata

  10. #10
    ops !! piccola dimenticanza.... :rollo:

    <%
    function valido(indirizzo)
    valido = true
    if len(indirizzo) = 0 then exit function

    dim nome, parte, i, c

    nome = Split(indirizzo, "@")
    if UBound(nome) <> 1 then
    valido = false
    exit function
    end if
    for each parte in nome
    if Len(parte) <= 0 then
    valido = false
    exit function
    end if
    for i = 1 to Len(parte)
    c = Lcase(Mid(parte, i, 1))
    if InStr("abcdefghijklmnopqrstuvwxyz_-.", c) <= 0 and not IsNumeric(c) then
    valido = false
    exit function
    end if
    next
    if Left(parte, 1) = "." or Right(parte, 1) = "." then
    valido = false
    exit function
    end if
    next
    if InStr(nome(1), ".") <= 0 then
    valido = false
    exit function
    end if
    i = Len(nome(1)) - InStrRev(nome(1), ".")
    if i <> 2 and i <> 3 then
    valido = false
    exit function
    end if
    if InStr(indirizzo, "..") > 0 then
    valido = false
    end if
    end function
    %>

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.