Foros del Web » Programando para Internet » Javascript »

ayuda con validacion de un rut chileno

Estas en el tema de ayuda con validacion de un rut chileno en el foro de Javascript en Foros del Web. buenos amigos estoy haciendo un formulario y tenog k validar un rut la idea es ante sde llegar a presionar el boton enviar tiene k ...
  #1 (permalink)  
Antiguo 07/08/2006, 15:24
Avatar de sebaghost  
Fecha de Ingreso: julio-2006
Mensajes: 49
Antigüedad: 17 años, 10 meses
Puntos: 0
Sonrisa ayuda con validacion de un rut chileno

buenos amigos estoy haciendo un formulario y tenog k validar un rut la idea es ante sde llegar a presionar el boton enviar tiene k validar ese campo pasando por el sin presionar el ni un boton bueno ayudemne por fa ya k me e cabeziado en esto
  #2 (permalink)  
Antiguo 07/08/2006, 15:37
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Si hablas de "antes de llegar a presionar el botón de enviar" .. para ese caso PHP no sabe nada de tu proceso .. así que es taréa integra de Javascript.

Usa el buscador del foro .. hay muchas rutinas en vários lenguajes para validar el RUT Chileno. También debes asegurarte de validar en "el lado del serivodr" siempre .. sea en PHP o el lenguaje que usas (si lo quieres en PHP; en las FAQ's de este foro PHP lo tienes ..).

(Muevo tu pregunta al foro de Javascript para que te orienten)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 07/08/2006, 15:47
Avatar de pato_volador  
Fecha de Ingreso: octubre-2005
Ubicación: Planeta tierra
Mensajes: 254
Antigüedad: 18 años, 7 meses
Puntos: 0
Que es un RUT CHILENO?
__________________
De todas las cosas que queria ser... :-D acabe siendo un pato volador... :risa:
http://patovolador.wordpress.com
  #4 (permalink)  
Antiguo 07/08/2006, 16:08
 
Fecha de Ingreso: julio-2003
Mensajes: 1
Antigüedad: 20 años, 10 meses
Puntos: 0
es

RUT significa ROL UNICO TRIBUTARIO, es un número seguido de un guión y un digito (por ejemplo 11.111.111-1)

A este último se le llama DIGITO VERIFICADOR ya que, haciéndole una transformación matemática al número(11.111.111), se llega al verificador(1).

Este RUT es único para cada EMPRESA o razón social en Chile.

A la vez existe el RUN que significa Rol Unico Nacional, cada persona en Chile tiene su RUN.

Si una persona crea una Empresa y es dueña de ella su RUN pasa a ser el RUT de la Empresa, o sea, se entiende que la transformación matemática para el rut o run es la misma.

Eso es lo que quiere sebaghost, validar el ingreso de ese rut o run.

La fórmula es bien simple. Es un ejercicio típico para alumnos de programación en Chile ;D

Resumiendo, un rut (más bien RUN) es un nº de cedula de identidad, común en cualquier parte del mundo.
  #5 (permalink)  
Antiguo 07/08/2006, 20:07
Avatar de univercity  
Fecha de Ingreso: noviembre-2002
Mensajes: 681
Antigüedad: 21 años, 6 meses
Puntos: 0
Visita esta pagina www.vmaule.com , tengo una validador del rut en Javascripts, sacalo usando el "ver codigo fuente".

Slds.
__________________
"Lo importante es nunca dejar de hacerse preguntas"
Albert Einstein
  #6 (permalink)  
Antiguo 12/08/2006, 11:19
Avatar de sebaghost  
Fecha de Ingreso: julio-2006
Mensajes: 49
Antigüedad: 17 años, 10 meses
Puntos: 0
gracia spor su respuesta y ya encontre la solucion de mi problema asi k se les agradece y aka va la solucion para k si alguien la necesita


<head>
<script language="JavaScript">
function checkFields(objTextoStrRut, objTextoRut) {
// Validación de todos los elementos del formulario
rut = rut;
if( rut == 0 ){
alert( "El rut está vacío, ingrese uno, por favor");
}
else {
var rut = objTextoStrRut.value;
var tmpstr = "";
for ( i=0; i < rut.length ; i++ )
if ( rut.charAt(i) != ' ' && rut.charAt(i) != '.' && rut.charAt(i) != '-' )
tmpstr = tmpstr + rut.charAt(i);
rut = tmpstr;
if ( validaRut(objTextoStrRut) ) {


return true;
}
else {
return false;
}
}
}

function checkDV(crut) {
largo = crut.length;

if ( largo > 2 )
rut = crut.substring(0, largo - 1);
else
rut = crut.charAt(0);
dv = crut.charAt(largo-1);

if ( rut == null || dv == null )
return 0;

var dvr = '0';
suma = 0;
mul = 2;
for (i= rut.length -1 ; i >= 0; i--) {
suma = suma + rut.charAt(i) * mul;
if (mul == 7)
mul = 2;
else
mul++;
}

res = suma % 11;
if (res==1)
dvr = 'k';
else if (res==0)
dvr = '0';
else {
dvi = 11-res;
dvr = dvi + "";
}

if ( dvr != dv.toLowerCase() )
return false;
return true;
}

function validaRut(objTextoStrRut) {
texto = objTextoStrRut.value;
var tmpstr = "";
for ( i=0; i < texto.length ; i++ )
if ( texto.charAt(i) != ' ' && texto.charAt(i) != '.' && texto.charAt(i) != '-' )
tmpstr = tmpstr + texto.charAt(i);
texto = tmpstr;
largo = texto.length;

if ( largo < 2 ) {
alert("Debe ingresar el rut completo");
objTextoStrRut.focus();
objTextoStrRut.select();
return false;
}
for (i=0; i < largo ; i++ ) {
if ( texto.charAt(i) !="0" && texto.charAt(i) != "1" && texto.charAt(i) !="2" && texto.charAt(i) != "3" && texto.charAt(i) != "4" && texto.charAt(i) !="5" && texto.charAt(i) != "6" && texto.charAt(i) != "7" && texto.charAt(i) !="8" && texto.charAt(i) != "9" && texto.charAt(i) !="k" && texto.charAt(i) != "K" ) {

objTextoStrRut.focus();
objTextoStrRut.select();
alert("El valor ingresado no corresponde a un rut válido");
return false;
}
}
var invertido = "";

for ( i=(largo-1),j=0; i>=0; i--,j++ )
invertido = invertido + texto.charAt(i);
var dtexto = "";

dtexto = dtexto + invertido.charAt(0);
dtexto = dtexto + '-';
cnt = 0;

for (i=1,j=2; i<largo; i++,j++) {
if ( cnt == 3 ) {
dtexto = dtexto + '.';
j++;
dtexto = dtexto + invertido.charAt(i);
cnt = 1;
}
else {
dtexto = dtexto + invertido.charAt(i);
cnt++;
}
}

invertido = "";

for ( i=(dtexto.length-1),j=0; i>=0; i--,j++ )
invertido = invertido + dtexto.charAt(i);

objTextoStrRut.value = invertido;

if ( checkDV(texto) ) {
return true;
}
else {
objTextoStrRut.focus();
objTextoStrRut.select();
alert("El rut es incorrecto");
return false;
}
}
</script>
</head>

<body>

<form name="form1" >
Rut : <input type="text" name="rut" onBlur="checkFields(this)" />

</form>

</body>
</html>
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:24.