Ciao a tutti,
questa mattina mi serviva verificare un codice fiscale e trovato in rete un ottimo script : http://www.icosaedro.it/cf-pi/index.html
Dopodichè mi sono messo a cercarne uno per generarli.
Alla fine ho preferito scriverlo.
Ho creato due pagine:
calcolocf.php // contiene il form per l'inserimento dei dati
calcolo_cf_class.php // contiene i metodi per calcolare il codice fiscale
Per funzionare ha bisogno di una tabella mysql che io ho chiamato listacomuni
L'ho generata da un file di testo che potete trovare a questo indirizzo http://lab.comuni-italiani.it/download/comuni.html
Al momento non saprei come farvi avere il file sql che ho creato.
Sicuramente lo script non è perfetto nel senso che alcune eccezioni probabilmente non riuscirà a risolverle, in
più non ho considerato i nati all'estero ma può essere implementato e ottimizzato.
Per ora lo posto così com'è. Può essere un buon punto di partenza. Si accettano consigli e modifiche.
calcolocf.php
	
	
	
		
Ho dimenticato il titolo
				
			questa mattina mi serviva verificare un codice fiscale e trovato in rete un ottimo script : http://www.icosaedro.it/cf-pi/index.html
Dopodichè mi sono messo a cercarne uno per generarli.
Alla fine ho preferito scriverlo.
Ho creato due pagine:
calcolocf.php // contiene il form per l'inserimento dei dati
calcolo_cf_class.php // contiene i metodi per calcolare il codice fiscale
Per funzionare ha bisogno di una tabella mysql che io ho chiamato listacomuni
L'ho generata da un file di testo che potete trovare a questo indirizzo http://lab.comuni-italiani.it/download/comuni.html
Al momento non saprei come farvi avere il file sql che ho creato.
Sicuramente lo script non è perfetto nel senso che alcune eccezioni probabilmente non riuscirà a risolverle, in
più non ho considerato i nati all'estero ma può essere implementato e ottimizzato.
Per ora lo posto così com'è. Può essere un buon punto di partenza. Si accettano consigli e modifiche.
calcolocf.php
		PHP:
	
	<?php
//Richiamo il file che contiene la classe
require_once 'calcolo_cf_class.php';
//Creo un'istanza della classe
$cf_calc = new Calcolo_CF();
//Questa variabile conterrà il codice fiscale calcolato o i messaggi per l'utente
$codice_fiscale = "Compila i campi del form";
//Creo un array per i mesi dell'anno
$mesi = array(1, "Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre");
//Controllo se è stato inviato il form
if (isset($_POST['calcola'])) {
    //Verifico che nessun post sia vuoto
    $campivuoti = 0;
    foreach ($_POST as $value) {
        if (empty($value)) {
            $campivuoti++;
            $codice_fiscale = "Tutti i campi sono obbligatori";
        }
    }
    //Assegno i valori dei post
    $nome = $_POST['nome'];
    $cognome = $_POST['cognome'];
    $giorno = $_POST['giorno'];
    $mese = $_POST['mese'];
    $anno = $_POST['anno'];
    $nascita = $anno . "-" . $mese . "-" . $giorno;
    $comune = $_POST['comune'];
    $sesso = $_POST['sesso'];
    if ($campivuoti == 0) {
        //Richiamo il metodo
        $codice_fiscale = $cf_calc->calcolacf($nome, $cognome, $nascita, $comune, $sesso);
    }
}
?>
<!-- Un po di css -->
<style type="text/css">
    table td {
        text-align: left;
        text-indent: 5px;
    }
    td.et {
        width:120px;
        text-align: right;
        padding-right:4px;
    }
    td.right {
        text-align: right;
    }
</style>
<!-- Form inserimento dati -->
<table>
    <form action="calcolocf.php" method="post">
        <tr>
            <td class="et">Codice Fiscale : </td>
            <td><b><?php echo $codice_fiscale; ?></b></td>
        </tr>
        <tr><td colspan="2"> </td></tr>
        <tr>
            <td class="et">Nome :</td>
            <td><input type ="text" name="nome" value="<?php if (isset($_POST['nome']))
    echo $_POST['nome'] ?>"/></td>
        </tr>
        <tr>
            <td class="et">Cognome : </td>
            <td><input type ="text" name="cognome" value="<?php if (isset($_POST['cognome']))
                       echo $_POST['cognome'] ?>"/></<td>
        </tr>
        <tr>
            <td class="et">Data di nascita: </td>
            <td><select name="giorno">
                    <?php
                    for ($i = 1; $i < 32; $i++) {
                        $i = str_pad($i, 2, '0', STR_PAD_LEFT);
                        echo "<option value='$i'";
                        if (isset($_POST['giorno']) && $_POST['giorno'] == $i) {
                            echo " selected='selected'";
                        }
                        echo ">$i</option>";
                    }
                    ?>
                </select>
                <select name="mese">
                    <?php
                    for ($i = 1; $i < 13; $i++) {
                        echo "<option value='$i'";
                        if (isset($_POST['mese']) && $_POST['mese'] == $i) {
                            echo " selected='selected'";
                        }
                        echo ">$mesi[$i]\n";
                    }
                    ?>
                </select>
                <select name="anno">
                    <?php
                    for ($i = 1900; $i <= date('Y'); $i++) {
                        echo "<option value='$i'";
                        if (isset($_POST['anno']) && $_POST['anno'] == $i || $i == 1970) {
                            echo " selected='selected'";
                        }
                        echo ">$i</option>";
                    }
                    ?>
                </select>
            </td>
        </tr>
        <tr>
            <td class="et">Luogo di nascita: </<td>
            <td>
                <?php
                $conn = mysql_connect('localhost', 'root', '', 'newcriric');
                $db = mysql_select_db('newcriric', $conn);
                /*
                 * La tabella comuni è stata generata da un file di testo presente a questo indirizzo
                 * http://lab.comuni-italiani.it/download/comuni.html
                 * I dati sono separati da ";" (punto e virgola). 
                 * I campi presenti sono: Codice Istat; Nome Comune; Sigla Provincia; Sigla Regione; 
                 * Prefisso Telefonico; CAP; Codice Catastale (codice fisco); Abitanti; Link Pagina Info
                 */
                $query = "SELECT codFisco,comune FROM listacomuni";
                $result = mysql_query($query);
                echo "<select name='comune'>";
                echo "<option value=''></option>";
                while ($row = mysql_fetch_assoc($result)) {
                    echo "<option value='" . $row['codFisco'] . "'";
                    if (isset($_POST['comune']) && $_POST['comune'] == $row['codFisco']) {
                        echo " selected='selected'";
                    }
                    echo ">" . $row['comune'] . "</option>\n";
                }
                echo "</select>";
                mysql_close();
                ?>
            </td>
        </tr>
        <tr>
            <td class="et">Sesso: </td>
            <td><select name="sesso">
                    <option value=""></option>
                    <option value="M"
                    <?php
                    if (isset($_POST['sesso']) && $_POST['sesso'] == "M") {
                        echo " selected='selected'";
                    }
                    ?>
                            >M</option>
                    <option value="F"
                    <?php
                    if (isset($_POST['sesso']) && $_POST['sesso'] == "F") {
                        echo " selected='selected'";
                    }
                    ?>        
                            >F</option>
                </select>
            </td>
        </tr>
        <tr>
            <td class="right" colspan="2"><input type="submit" name="calcola" value="Calcola"/></td>
        </tr>    
    </form>
</table>
	Ho dimenticato il titolo
			
				Ultima modifica: