Newsgroup: it.comp.www.php
Titolo: Controllo identità utente nel sito web

Vorrei fare un sito web dove l'utente dovrebbe acconsentire ad un contratto
ed registrarsi con numero della carta d'identità o patente, codice fiscale,
numero di telefono ecc.
Come posso verificare che i dati che inseriti dallo stesso sono veritieri,
esiste un database in rete che permette di fare questo?
Grazie a tutti!

...

Veritieri, cioè che la carta d'identità o la patente corrispondano ad un
codice fiscale e ad un numero di telefono.
[OT] Pregherò giorno e notte perché verificare ciò non sia possibile, se no
addio a libertà personali, rispetto dell'individuo, privacy e quant'altro.
Ma torniamo in tema.[/OT]
Non credo sia possibile. Puoi sincerarti al massimo della validità formale
di alcuni dati di questi, in particolare il codice fiscale, che ha un
formato particolare (puoi vedere con le espressioni regolari), ed in più ha
come ultimo carattere una cifra dipendente dalle precedenti. Se questo può
bastare, posso andare a rispolverare il codice e posso fornirtelo.
Ciao.
Paolo

 ha scritto nel messaggio
news:Vo%m8.60516$%g7.19...@twister2.libero.it...

un minimo per il ccontrollo codice fiscale, in JS:
if ( form.cfisc.value.length >0 && (form.cfisc.value.length != 16 ||
form.cfisc.value.search(/^[A-Z][A-Z][A-Z][A-Z][A-Z][A-Z]\d\d[A-Z]\d\d[A-Z]\d
\d\d[A-Z]$/i) == -1) ) {
  alert("Codice fiscale non valido");
}
Ciao
Alex

ringrazio molto.
Il codice fiscale č fatto cosě:
RSSMRA60E05H501L
RSS.MRA.60.E.05.H501.L
RSS: Cognome (Rossi, ma anche Arsesi)
MRA:  Nome (Mario, ma anche Mauro)
60: Anno di nascita
E: Mese di nascita (Maggio (i vari mesi sono: ABCDEHLMPRST))
05: giorno di nascita + 40 per le femmine
H501: Comune di nascita (Roma); Milano č F205. Serve un DB per ricavarli
L: Carattere di controllo. Una specie di somma "pesata" di tutto il resto:
Carattere     Posizione     Peso          Subtotale
R              1             8             8
S              2             18            26
S              3             12            38
M              4             12            50
R              5             8             58
A              6             0             58
6              7             15            73
0              8             0             73
E              9             9             82
0              10            0             82
5              11            13            95
F              12            5             100
2              13            5             105
0              14            0             105
5              15            13            118
118 mod 26 = 14 ---> la 14esima lettera dell'alfabeto č O
Nota che il peso delle lettere pari č 0 per A e 0, 1 per B e 1, 2 per C e 2
e cosě via.
Per le dispari invece i pesi sono:
1 ,  0 ,  5 ,  7 ,  9 ,  13 ,  15 ,  17 ,  19 ,  21 ,  2 ,  4 ,  18 ,  20 ,
11 ,  3 ,  6 ,  8 ,  12 ,  14 ,  16 ,  10 ,  22 ,  25 ,  24 ,  23
Quindi 1 per A e 0, 0 per B e 1, 5 per C e 2....infatti il 5 finale vale 15.
Ciao.
Paolo

  alert("Codice fiscale non valido");
Occhio, questo considera "non validi" i codici alternativi forniti dal
Ministero per evitare le collisioni.
Gli ultimi caratteri dell'espressione dovrebbero essere
	[A-Z][A-Z0-9][A-Z0-9][A-Z0-9][A-Z]
e non
	[A-Z]\d\d\d[A-Z]
...se possibile (non conosco le regexp in JS).
Leonardo

 RSS.MRA.60.E.05.H501.L
[REGOLE]
Questo e' vero finche' non hai due persone con lo stesso {[nome
corto]/data/comune}, allore viene assegnato un altro carattere di
controllo (AFAIK).

controllo (AFAIK).
Nay. Viene cambiato il codice ufficio IVA, che diventa alfanumerico
anche nelle ultime tre cifre (io ho D612, ma in caso di collisione,
diventerei D61B). Il carattere di controllo ovviamente cambia, ma a
seguito delle stesse regole di checksum.
Leonardo
-- 
Time's angles, mages tell, conceal a place
incredible, beyond the mundane mind;
night-shrouded and between the seas of space
dread creatures drift in the ageless winds.