
15/01/2004, 10:49
|
 | | | Fecha de Ingreso: diciembre-2002 Ubicación: santiago-chilito
Mensajes: 1.931
Antigüedad: 22 años, 2 meses Puntos: 2 | |
validar rut chileno hola maestros estoy tratando de validar el digito del rut chileno pero no me funciona bien , en realidad solo sirva para validar mi propio rut , pero el resto no (debe ser coincidencia claro).
<?php
error_reporting(0);
$rut=($_POST['rut']); // bienen de un formulario.
$dig=($_POST['dig']);
ECHO "rut:$rut<br>";
echo"dig:$dig<br>";
$c_caracteres=strlen($rut);
echo "n caracte:$c_caracteres";
for ($i=0;$i<=$c_caracteres;$i++) // recorre el rut de izquierda a derecha o de inicio a fin
{
echo "cuenta:$i<br>";
$caracter=substr($rut,$i,1); /*/ extrae un caracter
echo "caracter: $caracter<br><br><br>";
$sumar=0;
switch($i)
{
case 0:
$sumar1=($caracter*3)+$sumar;
echo " la sume entre $caracter*3+$sumar=$sumar1 <br>";
break;
case 1:
$sumar2=($caracter*2)+$sumar1;
echo " la sume entre $caracter*2+$sumar1=$sumar2 <br>";
break;
case 2:
$sumar3=$caracter*7+$sumar2;
echo " la sume entre $caracter*7+$sumar2=$sumar3 <br>";
break;
case 3:
$sumar4=$caracter*6+$sumar3;
echo " la sume entre $caracter*6+$sumar3=$sumar4 <br>";
break;
case 4:
$sumar5=$caracter*5+$sumar4;
echo " la sume entre $caracter*5+$sumar4=$sumar5 <br>";
break;
case 5:
$sumar6=$caracter*4+$sumar5;
echo " la sume entre $caracter*4+$sumar5=$sumar6 <br>";
break;
case 6:
$sumar7=$caracter*3+$sumar6;
echo " la sume entre $caracter*3+$sumar6=$sumar7 <br>";
break;
case 7:
$sumar8=$caracter*2+$sumar7;
echo " la sume entre $caracter*2+$sumar7=$sumar8 <br>";
break;
}
}
$sumat=$sumar1+$sumar2+$sumar3+$sumar4+$sumar5+$su mar6+$sumar7+$sumar8;
echo "<br><br>sumatotal: $sumat";
$div=$sumat%11;
$resto=11-$div;
echo "el digito es :$resto";
?>
creo que me equivoco en la formula ,por eso se los dejo para que me den una mano , gracias..... |