Help needed

Events happening in the community are now at Drupal community events on www.drupal.org.
translector's picture

Hola amigos,

Junto con saludarles, les comento que estoy trabajando en la validación de un formulario donde se debe ingresar en un campo el número NIT (algo similar al rut, pero utilizado en Guatemala).

No estoy utilizando el módulo rut, ya que la validación debe hacerse en php del lado del servidor. Tengo el siguiente código, pero no me está validando correctamente.

/**
   * Validator of nit
   * @param $nit: string
   * @return boolean: if nit is correct return true else return false
   */
  public function isValidNit($nit) {

    $isValidNit = TRUE;
    $nit = str_replace('-', '', $nit);
    $numero = substr($nit, 0, 8);
    $verificador = substr($nit, 8, 1);
    $numero = str_split($numero);
    $suma = 0;
    for ($ii = 0; $ii < count($numero); $ii++) {
      $suma += $numero[$ii] * ($ii + 2);
    }
    $resultado = ($suma % 11);
   
    $isValidNit = ($resultado != $verificador) ? FALSE : TRUE;
    return $isValidNit;
  }

Les agradecería mucho si le pudieran echar un vistazo y comentar si hay algún detalle que se me esté escapando.

Saludos y ojalá nos veamos pronto en alguna reunión por ahí.

Comments

Puedes poner un ejemplo de

jhonatanfdez's picture

Puedes poner un ejemplo de ese número NIT, y que resultado debería retornar la función, para poder verificar si está bien o no.

Es muy similar al RUT:

Chile

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: