Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/11/2011, 21:05
alexvzzz
 
Fecha de Ingreso: noviembre-2011
Mensajes: 3
Antigüedad: 12 años, 5 meses
Puntos: 0
Información Obtener el Número IMSS y CURP desde Base de Datos Oficial

Hace algunos meses tuve que diseñar un sistema de administración de personal para una empresa y era necesario utilizar el Número de IMSS (NSS) del personal, tanto que ya estaba trabajando, como el de las nuevas contrataciones.

Había un script que permitía obtenerlo desde el servidor de Infonavit, pero al parecer cambiaron el diseño del portal de Infonavit y el script ya no funcionó.

Aquí les dejo un código que es el que yo utilizo para obtener dicho NSS.

Primero necesitamos un formulario para solicitar Nombre(s), Apellido Paterno, Apellido Materno y Fecha de Nacimiento.
Código HTML:
 Para efectuar la búsqueda por nombre y fecha de nacimiento proporciónanos los siguientes datos 
(exactamente como aparecen en tu acta de nacimiento).
  <form action="http://www.infonavit.org.mx:8070/wpPrecalificacionCofinavitWeb/servlet/infonavit.cofinanciamiento.controlador.BuscaNSS" method="post" name="FrmBuscaNSS">
   <input type="hidden" name="accion" value="consultatitular">
   <br>
   <strong>Nombre (s) :</strong>
   <input maxlength="30" name="nombreDH" type="text" size="30">
   <br>
   <strong>Apellido materno:</strong>
   <input maxlength="30" name="maternoDH" type="text" size="30">
   <br>
   <strong>Apellido paterno:</strong>
   <input maxlength="30" name="paternoDH" type="text" size="30">
   <br>
   <strong><br />Fecha de nacimiento :</strong>
   <br>
   Día: 
   <select name="diaNacimiento">
    <option value="01">01</option>
    <option value="02">02</option>
    <option value="03">03</option>
<!--    ...   Todas las option para cada dia -->
    <option value="30">30</option>
    <option value="31">31</option>
   </select>
   &nbsp;&nbsp;&nbsp;
   Mes:
   <select name="mesNacimiento">
    <option value="01">Enero</option>
    <option value="02">Febrero</option>
<!--    ...   Todas las option para cada mes -->
    <option value="12">Diciembre</option>
   </select>
   &nbsp;&nbsp;&nbsp;
   Año: 
   <select name="anioNacimiento">
    <option value="1999">1999</option>
    <option value="1998">1998</option>
<!--    ...   Todas las option para cada año  -->
    <option value="1935">1935</option>
    <option value="1934">1934</option>
   </select>
   <br>
   <input type="button" value="Buscar NSS" onclick="submit()">
</form> 
Cuando hagas clic en Buscar NSS aparecerá la información de la persona. (Nombre, Número IMSS y Nombre del Patrón)

Este código es muy básico. De ustedes corre personalizarlo y adecuarlo a sus aplicaciones web.

IMPORTANTE: No modificar las propiedades (de lo contrario, la búsqueda no se realizará correctamente).

form > action= no modificar la url
input > name=nombreDH
input > name=paternoDH
input > name=maternoDH
select > name=diaNacimiento
select > name=mesNacimiento
select > name=anioNacimiento

Tampoco quitar el campo

<input type="hidden" name="accion" value="consultatitular">


Desafortunadamente, no hay un id asignado al dato de NSS en el para extraer unicamente ese dato de la página de resultado y colocarlo en un campo dentro de nuestro form. (¿o se puede hacer mediande DOM? ayuda para saber eso)

En la app web que diseñe, tengo un form con los campos Nombre, ApPaterno, ApMaterno, DiaNac, MesNac, AnioNac y un campo NSS con un boton "Buscar NSS" que abre una ventana pop-up en la que mediante javascript paso las variables desde mi form (con mis propios nombres de campo) mediante GET y con php creo un formulario en el que se asignan los datos al form (con los nombres requeridos) y automáticamente envía la información y el pop-up sólo muestra la página con el resultado, y el usuario únicamente copia el NSS de esta página y lo pega en el campo correspondiente de el formulario de la app web.

Este es el script que se carga al "Buscar NSS"
Código HTML:
<script>
function datosIMSS(){
 nombre_	         = document.getElementById('Nombre').value;
 appaterno_ 	 = document.getElementById('ApPaterno').value;
 apmaterno_ 	 = document.getElementById('ApMaterno').value;
 anionacimiento_ = document.getElementById('anionacimiento').value;
 mesnacimiento_  = document.getElementById('mesnacimiento').value;
 dianacimiento_  = document.getElementById('dianacimiento').value;
    if ((document.getElementById('Nombre').value.length==0)||
		(document.getElementById('ApPaterno').value.length==0) ||
		(document.getElementById('ApMaterno').value.length==0))
		{
       alert("Por favor proporciona toda la informacion requerida") ;
			document.DatosEntrevista.Nombre.focus();
    }
   else {
     window.open('busca_imss.php?nombre='+nombre_+'&appaterno='+appaterno_+'&apmaterno='+
                  apmaterno_+'&anionacimiento='+anionacimiento_+'&mesnacimiento='+
                  mesnacimiento_+'&dianacimiento='+dianacimiento_,'wIMSS','width=600,height=400');
   }
}
</script> 
Esta es la página que carga (busca_imss.php):

Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Buscar Numero de Seguridad Social</title>
</head>

<body>
<form action="http://www.infonavit.org.mx:8070/wpPrecalificacionCofinavitWeb/servlet/infonavit.cofinanciamiento.controlador.BuscaNSS" method="post" name="FrmBuscaNSS">
<input type="hidden" name="accion" value="consultatitular"> 
Código PHP:
Ver original
  1. echo '<input name="nombreDH" type="hidden" value="'.$_GET[nombre].'">';
  2. echo '<input name="paternoDH" type="hidden" value="'.$_GET[appaterno].'">';
  3. echo '<input name="maternoDH" type="hidden" value="'.$_GET[apmaterno].'">';
  4. if ($_GET[dianacimiento]<10) $dianacimiento='0'.$_GET[dianacimiento];
  5. else $dianacimiento = $_GET[dianacimiento];
  6. echo '<input name="diaNacimiento" type="hidden" value="'.$dianacimiento.'">';
  7. if ($_GET[mesnacimiento]<10) $mesnacimiento='0'.$_GET[mesnacimiento];
  8. else $mesnacimiento = $_GET[mesnacimiento];
  9. echo '<input name="mesNacimiento" type="hidden" value="'.$mesnacimiento.'">';
  10. echo '<input name="anioNacimiento" type="hidden" value="'.$_GET[anionacimiento].'">';
Código HTML:
<script type="text/javascript">
<!--
document.FrmBuscaNSS.submit();
// -->
</script>
Buscando...
</form>
</body>
</html> 
Hice lo mismo para obtener el CURP desde la página de http://consultas.curp.gob.mx

Éste es el código de la página buscar_curp.php
Código PHP:
Ver original
  1. $nombre      = $_GET[nombre];
  2. $appaterno = $_GET[appaterno];
  3. $apmaterno = $_GET[apmaterno];
  4. $en              = $_GET[edonacimiento];  //Estado de Nacimiento
  5. $an              = $_GET[anionacimiento];
  6. $mn              = $_GET[mesnacimiento];
  7. $dn              = $_GET[dianacimiento];
  8. $sexo            = $_GET[sexo];
  9. header("Location: http://consultas.curp.gob.mx/CurpSP/curp1.do?strPrimerApellido=$appaterno&strSegundoAplido=$apmaterno&strNombre=$nombre&strdia=$dn&strmes=$mn&stranio=$an&sEntidadA=$en&sSexoA=$sexo&strTipo=A");

Espero les sirva.

Última edición por alexvzzz; 15/11/2011 a las 21:21