Back to top

Autore Topic: Chronoform V4 - controllo Codice FIscale con PHP  (Letto 2472 volte)

Offline Max Ambrox

  • Esploratore
  • **
  • Post: 150
  • Sesso: Maschio
    • Mostra profilo
Chronoform V4 - controllo Codice FIscale con PHP
« il: 28 Giu 2013, 10:50:02 »
ciao ragazzi, sto cercando di far controllare l'inserimento del codice fiscale su un sito che sto realizzando, ho girovagato per il forum ed ho trovato un codice PHP che permette di fare questo controllo, ma anche quando inserisco il Codice Fiscale corretto mi dice che è sbagliato...


questo è il codice



<?php


{


if (ereg("^[0-9]{11}$", $form->data['cf'])) {
$form->validation_errors['cf'] = "Il codice fiscale inserito è relativo ad una persona giuridica.";
  return false;
}
elseif
(!ereg("^[a-zA-Z]{6}[0-9]{2}[a-zA-Z]{1}[0-9]{2}[a-zA-Z]{1}[0-9]{3}[a-zA-Z]{1}$",
$form->data['cf'])) {
$form->validation_errors['cf'] = "Errore, il codice fiscale contiene caratteri non validi o non è della lunghezza esatta.";
  return false;
}
else {
  $s=0;
  for ($i = 1; $i <= 13; $i += 2 ){
      $c = $form->data['cf'][$i];
      if ('0' <= $c && $c <= '9') {
    $s += ord($c) - ord('0');
      }
      else {
    $s += ord($c) - ord('A');
      }
  }
  for ($i = 0; $i <= 14; $i += 2 ) {
      $c = $form->data['cf'][$i];
      switch( $c ){
    case '0':  $s += 1;  break;
    case '1':  $s += 0;  break;
    case '2':  $s += 5;  break;
    case '3':  $s += 7;  break;
    case '4':  $s += 9;  break;
    case '5':  $s += 13;  break;
    case '6':  $s += 15;  break;
    case '7':  $s += 17;  break;
    case '8':  $s += 19;  break;
    case '9':  $s += 21;  break;
    case 'A':  $s += 1;  break;
    case 'B':  $s += 0;  break;
    case 'C':  $s += 5;  break;
    case 'D':  $s += 7;  break;
    case 'E':  $s += 9;  break;
    case 'F':  $s += 13;  break;
    case 'G':  $s += 15;  break;
    case 'H':  $s += 17;  break;
    case 'I':  $s += 19;  break;
    case 'J':  $s += 21;  break;
    case 'K':  $s += 2;  break;
    case 'L':  $s += 4;  break;
    case 'M':  $s += 18;  break;
    case 'N':  $s += 20;  break;
    case 'O':  $s += 11;  break;
    case 'P':  $s += 3;  break;
    case 'Q':  $s += 6;  break;
    case 'R':  $s += 8;  break;
    case 'S':  $s += 12;  break;
    case 'T':  $s += 14;  break;
    case 'U':  $s += 16;  break;
    case 'V':  $s += 10;  break;
    case 'W':  $s += 22;  break;
    case 'X':  $s += 25;  break;
    case 'Y':  $s += 24;  break;
    case 'Z':  $s += 23;  break;
      }
  }
  if (chr($s%26 + ord('A')) != $form->data['cf'][15]) {
$form->validation_errors['cf'] = "Errore, il codice fiscale inserito non è formalmente
corretto in quanto il codice di controllo non corrisponde.";
  }
  if( chr($s%26+ord('A'))!=$cf[15] )
    return false;
    return true;
  }
}


?>


dov'è che sbaglio?


Il sito in questione è www.misurediverse.it
« Ultima modifica: 28 Giu 2013, 11:17:57 da Max Ambrox »

Offline Max Ambrox

  • Esploratore
  • **
  • Post: 150
  • Sesso: Maschio
    • Mostra profilo
Re:Chronoform V4 - controllo Codice FIscale con PHP
« Risposta #1 il: 01 Lug 2013, 11:12:12 »
ragazzi nessuno può darmi un aiuto? ... sono bloccato con il sito... please!!!

Offline BelinBelan

  • Instancabile
  • ******
  • Post: 3887
  • Sesso: Maschio
  • Niente di meno e niente di più. uguale? Forse.
    • Mostra profilo
Re:Chronoform V4 - controllo Codice FIscale con PHP
« Risposta #2 il: 01 Lug 2013, 11:23:18 »
Belin Max!!!!  :)
Codice: [Seleziona]
}
  if (chr($s%26 + ord('A')) != $form->data['cf'][15]) {
$form->validation_errors['cf'] = "Errore, il codice fiscale inserito non è formalmente
corretto in quanto il codice di controllo non corrisponde.";
  }

Leva via quell'IF di troppo, tutto quel blocco fallo sparire...  :)
--
Per piacere, no messaggi privati con richieste d'aiuto!!!

Offline Max Ambrox

  • Esploratore
  • **
  • Post: 150
  • Sesso: Maschio
    • Mostra profilo
Re:Chronoform V4 - controllo Codice FIscale con PHP
« Risposta #3 il: 04 Lug 2013, 10:14:24 »
grazie Belin, adesso il controllo del codice fiscale è corretto, ora però sorge un altro problema, il form non invia più i dati in e-mail e non va neanche alla pagina dedicata al messaggio di ringraziamento...come è possibile?

Offline Max Ambrox

  • Esploratore
  • **
  • Post: 150
  • Sesso: Maschio
    • Mostra profilo
Re:Chronoform V4 - controllo Codice FIscale con PHP
« Risposta #4 il: 08 Lug 2013, 11:43:11 »
Dai ragazzi per favore, mi fate capire cosa sta succedendo con questo sito?
please...


ricordo il sito in questione è www.misurediverse.it

 



Web Design Bolzano Kreatif