Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/01/2004, 10:49
Avatar de mveraa
mveraa
 
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.931
Antigüedad: 21 años, 3 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.....