elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  Obtener fecha de nacimiento de persona
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Obtener fecha de nacimiento de persona  (Leído 13,724 veces)
danipena78

Desconectado Desconectado

Mensajes: 31


Ver Perfil
Obtener fecha de nacimiento de persona
« en: 3 Julio 2011, 23:47 pm »

Amigo miren como podria obtener la edad de una persona a partir de un formulario donde se ingresan la fecha de nacimiento-mes/ano utilizando menu despegables..

Pero me gustaria que me aparezca la edad en la siguiente linea. ademas reduci el codigo para ahorar espeacio.. como podria hacer.

aqui pongo el codigo.

Código
  1. <td width="53"><form id="form8" name="form8" method="post" action="">
  2. <select name="select2" size="0">
  3. <option selected="selected">1</option>
  4. </select>
  5. </label>
  6. </form> </td>
  7. <td width="20"><span class="Estilo8">d/</span></td>
  8. <td width="108"><form id="form9" name="form9" method="post" action="">
  9. <select name="select3" size="0">
  10. <option selected="selected">Enero</option>
  11. <option>Febrero</option>
  12. </select>
  13. </label>
  14. </form> </td>
  15. <td width="20"><span class="Estilo8">m/</span></td>
  16. <td width="43"><form id="form10" name="form10" method="post" action="">
  17. <select name="select4" size="1">
  18. <option>2000</option>
  19. <option>2001</option>
  20. </select>
  21. </label>
  22. </form>


saludos.

editado para poner el codigo con geshi


« Última modificación: 4 Julio 2011, 00:06 am por Nakp » En línea

dark_sargon


Desconectado Desconectado

Mensajes: 534


CJ


Ver Perfil WWW
Re: Obtener fecha de nacimiento de persona
« Respuesta #1 en: 4 Julio 2011, 06:15 am »

Qué tal amigo.

Para reducir un poco el codigo puedes hacer uso de FOR de PHP en cada <option> de tu formulario, pues no se como se podría hacer para el mes pero lo puse para el día y el año.

Para calcular la edad usas javascript. Hay una funcion que se llama cuando hay un cambio en las listas desplegables.

Para saber la fecha actual puedes obtener la fecha del servidor con PHP o puedes obtener la fecha del usuario pero no es recomendable porque puede estar mal.

Esta es mi solución:
calculo.php
Código
  1.   <title>Calcular edad</title>
  2.  
  3.   <script type="text/javascript" language="javascript">
  4.     function cambiar(){
  5.       var year = document.getElementById('year').value;
  6.       var year_serv = <?php echo date('Y')?>;
  7.  
  8.       var edad = year_serv-year-1;
  9.  
  10.       if(document.getElementById('mes').value==<?php echo date('m')?>){
  11.         if(document.getElementById('dia').value<=<?php echo date('d')?>){
  12.           edad += 1;
  13.          }
  14.       }else if(document.getElementById('mes').value<=<?php echo date('m')?>){
  15.         edad += 1;
  16.       }
  17.  
  18.       document.getElementById('edad').value = edad;
  19.     }
  20.   </script>
  21.  
  22. </head>
  23.  
  24.   <?php
  25.      echo "Fecha del servidor: ".date('d/m/Y');
  26.   ?>
  27. <br/><br/>
  28.   D&iacute;a: <select id="dia" onChange="cambiar()">
  29.      <?php
  30.        for($i=1; $i<32; $i++){
  31.          echo "<option value='".$i."'>".$i."</option>\n";
  32.        }
  33.      ?>
  34.   </select>
  35. <br/>
  36.   Mes: <select id="mes" onChange="cambiar()">
  37.      <option value="1">Enero</option>
  38.      <option value="2">Febrero</option>
  39.      <option value="3">Marzo</option>
  40.      <option value="4">Abril</option>
  41.      <option value="5">Mayo</option>
  42.      <option value="6">Junio</option>
  43.      <option value="7">Julio</option>
  44.      <option value="8">Agosto</option>
  45.      <option value="9">Septiembre</option>
  46.      <option value="10">Octubre</option>
  47.      <option value="11">Noviembre</option>
  48.      <option value="12">Diciembre</option>
  49.   </select>
  50. <br/>
  51.   A&ntilde;o: <select id="year" onChange="cambiar()">
  52.      <?php
  53.        for($i=1950; $i<2012; $i++){
  54.          echo "<option value='".$i."'>".$i."</option>\n";
  55.        }
  56.      ?>
  57.   </select>
  58. <br/>
  59. <br/>
  60. Tu edad es: <input type="text" id="edad" />
  61. </body>
  62. </html>
  63.  

El algoritmo (javascript) no lo pensé mucho  ;D.. puede estar mal así que pruébalo.

Un saludo.


En línea

http://www.actimediaonline.com
Diseño Web, animación y más.

http://www.ciudadoscura.com
Diseño Web, electrónica, programación, móviles y más.
dark_sargon


Desconectado Desconectado

Mensajes: 534


CJ


Ver Perfil WWW
Re: Obtener fecha de nacimiento de persona
« Respuesta #2 en: 4 Julio 2011, 06:20 am »

Te dejo un link para que pruebes el script: http://www.actimediaonline.com/calculo.php
En línea

http://www.actimediaonline.com
Diseño Web, animación y más.

http://www.ciudadoscura.com
Diseño Web, electrónica, programación, móviles y más.
danipena78

Desconectado Desconectado

Mensajes: 31


Ver Perfil
Re: Obtener fecha de nacimiento de persona
« Respuesta #3 en: 4 Julio 2011, 07:16 am »

Voila :=)

Amigo es Perfectisimo justo pero justo lo que necesitaba voila.

Solo un ayuda mas please.

como haria para enviar los datos a la BASE DE DATOS..

osea cuales serian las variables.


Gracias Amigo.

Eres un genio :=)
En línea

EFEX


Desconectado Desconectado

Mensajes: 1.171


"Dinero Facil"


Ver Perfil WWW
Re: Obtener fecha de nacimiento de persona
« Respuesta #4 en: 4 Julio 2011, 12:37 pm »

Voila :=)
Amigo es Perfectisimo justo pero justo lo que necesitaba voila.
Solo un ayuda mas please.
como haria para enviar los datos a la BASE DE DATOS..
osea cuales serian las variables.
Gracias Amigo.
Eres un genio :=)

¿Hablas de pasar valores javascript a php?, en ese caso creo que no se puede por que javascript se ejecuta en el cliente y php en el servidor, la solucioòn seria usar ajax.
En línea

dark_sargon


Desconectado Desconectado

Mensajes: 534


CJ


Ver Perfil WWW
Re: Obtener fecha de nacimiento de persona
« Respuesta #5 en: 4 Julio 2011, 18:28 pm »

Voila :=)

Amigo es Perfectisimo justo pero justo lo que necesitaba voila.

Solo un ayuda mas please.

como haria para enviar los datos a la BASE DE DATOS..

osea cuales serian las variables.


Gracias Amigo.

Eres un genio :=)

Qué bueno que te haya servido.

Ahora lo que hay que hacer es ponerle un nombre a cada uno de los 3 <select> y si quieres al campo de la edad. También debes poner un formulario que encierre los campos cuyo valor deseas recoger. Por último agrega un botón tipo submit dentro del formulario y ya está.
Luego haces tu script que reciba los datos y los ponga en la BD... puede ser con POST o GET.

Nota: puedes deshabilitar el campo de edad si quieres que el usuario no edite tan facilmente su valor:
Código
  1. ...
  2. Tu edad es: <input type="text" id="edad" disabled />
  3. ...
  4.  

Un saludo.
En línea

http://www.actimediaonline.com
Diseño Web, animación y más.

http://www.ciudadoscura.com
Diseño Web, electrónica, programación, móviles y más.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[SRC] Obtener la fecha real !
Programación Visual Basic
Karcrack 2 2,397 Último mensaje 27 Enero 2009, 22:13 pm
por Karcrack
como obtener CURP sin fecha de nacimiento?(MEXICO) « 1 2 »
Foro Libre
el chavo 12 165,255 Último mensaje 26 Marzo 2013, 02:53 am
por POETA_027
Obtener Fecha
.NET (C#, VB.NET, ASP)
Keyen Night 3 3,632 Último mensaje 16 Enero 2010, 05:32 am
por Keyen Night
EDAD A TRAVEZ DE FECHA DE NACIMIENTO
Programación C/C++
JEEM1296 0 2,172 Último mensaje 1 Diciembre 2015, 07:35 am
por JEEM1296
Peligro en Twitter: no cambies tu fecha de nacimiento a 2007
Noticias
wolfbcn 0 1,193 Último mensaje 27 Marzo 2019, 13:58 pm
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines