Validar No de imss con java o php

#1
Muy buenas tardes, saludos a todos, quisiera su ayuda para validar el Numero de Seguridad Social usando java script o php.

El algoritmo que tengo esta en excel, para entenderlo mejor pongan en

La celda A1 el no de Imss 82977619715
en B1 la formula para validar
=SI(DERECHA(A1,1)<>DERECHA(10-DERECHA(SI(A1<9999999999,0,EXTRAE(A1,1,1))+EXTRAE(DERECHA(A1,10),1,1)*2-SI(VALOR(EXTRAE(DERECHA(A1,10),1,1))>4,9,)+EXTRAE(DERECHA(A1,9),1,1)+EXTRAE(DERECHA(A1,8),1,1)*2-SI(VALOR(EXTRAE(DERECHA(A1,8),1,1))>4,9,)+EXTRAE(DERECHA(A1,7),1,1)+EXTRAE(DERECHA(A1,6),1,1)*2-SI(VALOR(EXTRAE(DERECHA(A1,6),1,1))>4,9,)+EXTRAE(DERECHA(A1,5),1,1)+EXTRAE(DERECHA(A1,4),1,1)*2-SI(VALOR(EXTRAE(DERECHA(A1,4),1,1))>4,9,)+EXTRAE(DERECHA(A1,3),1,1)+EXTRAE(DERECHA(A1,2),1,1)*2-SI(VALOR(EXTRAE(DERECHA(A1,2),1,1))>4,9,),1),1),"Incorrecto","Correcto")

O para entender mejor la formula de arriba demasiado larga, en esta hoja de excel viene desglosado
Ahora bien, la pregunta es como convertir eso en una funcion que valide el campo IMSS y DV que introduzcan en un formulario.

saludos
 

TheSirius38

Bovino adolescente
#2
Hola, lo que necesitas es validar ese algoritmo en Java? o codificarlo en Java? por que yo te puedo ayudar al pasito (me estoy mudando) si te urge pss no se si yo te sea de ayuda, tambien me gustaria saber que vas a usar (swing, java "puro", etc) si jalas el dato de una base, que base y asi, bueno quedo al pendiente de lo que me digas.

Saludos!
 
#3
Achis...TheSirius38, pues mira, el formulario esta hecho en php, y tiene el campo IMSS y DV, entonces lo que hay que hacer es que al momento de llenar los campos haga la comparacion, seria algo asi como esto:

<SCRIPT>
var x = document.forms.editform.value_DV;
x.onchange = function()
{
var imssx = document.forms.editform.value_IMSS.value;
var y aqui va todo el rollo para ver si es correcto el NSS introducido...
}
</SCRIPT>
 
#7
bueno pues En Java Script es muy sencillo mis estimados programadores todo lo que se tiene que hacer para validar cualquier expresion es utilizar las "Expresiones Regulares" ó ExpReg buscate ese tema en internet ahi muchisima informacion un ejemplo seria ereg = /aqui van todas las condiciones que quieres que sean validas para la cadena en este caso el NSS \
 
#8
Hola Juan, como sería en esta caso siendo que es tan sencillo?

Esto en mi opinion no es una expresion regular, es un algoritmo para llegar a un valor en base a 10 numeros introducidos.

Puedo estar equivocado.
 
Arriba