Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/07/2011, 17:20
Avatar de KsrZ
KsrZ
 
Fecha de Ingreso: abril-2011
Ubicación: /home/KsrZ/Desktop
Mensajes: 156
Antigüedad: 13 años
Puntos: 26
Problem: Uso del date; fecha (user-actual)

Hola a todos, primero que nada en una breve explicación de que intento hacer..
(mi formulario que pide datos de nacimiento (día, mes, año, nombre) enviados a edad2.php.




Código HTML:
Ver original
  1. <form method='POST' action='edad2.php' onsubmit='(this)'>
  2.     <table border='3' cellspacing='2' align='center'>
  3.         <tr><td colspan='4' align='center'>Ingrese sus datos<br/>de nacimiento </td>
  4. </tr><tr>
  5. <td width='40' align='center'>Dia</td>
  6. <td width='50' align='center'>Mes</td>
  7. <td width='50' align='center'>Año</td>
  8. <td width='100' align='center'>Nombre</td>
  9. </tr><tr><td align='center'>
  10. <select name='SelDia'>
  11. <option value='ninguna1' selected='selected'>Dia</option>
Código PHP:
Ver original
  1. <?php
  2. for ($i=01;$i<=31;$i++)
  3. {
  4. echo "<option value='$i'>$i</option>";
  5. }
  6. ?>
Código HTML:
Ver original
  1.         </td> <td>
  2.         <select name="SelMes">
  3.         <option value='ninguna2' selected='selected'>Mes</option>
  4. <option value='1'>Enero</option>
  5. <option value='2'>Febrero</option>
  6. <option value='3'>Marzo</option>
  7. <option value='4'>Abril</option>
  8. <option value='5'>Mayo</option>
  9. <option value='6'>Junio</option>
  10. <option value='7'>Julio</option>
  11. <option value='8'>Agosto</option>
  12. <option value='9'>Septiembre</option>
  13. <option value='10'>Octubre</option>
  14. <option value='11'>Noviembre</option>
  15. <option value='12'>Diciembre</option>
  16. </td>
  17. <td align='center'>
  18. <select name='Selanio'>
  19.         <option value='ninguna3' selected='selected'>Año</option>
Código PHP:
Ver original
  1. <?php
  2. $fechaActual=date("Y");
  3. for ($i=1860;$i<=$fechaActual;$i++)
  4. {
  5. echo "<option value='$i'>$i</option>";
  6. }
  7. ?>
Código HTML:
Ver original
  1. </td><td>
  2. <input type='text' name='TXTnombre' maxlength='20' size='20'>
  3. </td></tr>
  4. <tr><td colspan='4' align='right'>
  5. <input type='submit' name='btnEnviar' value='Enviar'>
  6. </td></tr>
  7.        
  8.         </table>
  9. </form>
  10. </body>
  11. </html>
[/HIGHLIGHT]



[lo de arriba esta en una pagina sola..]
-------------------------------------------------------------------------------------------------


(intento de Calculos) de la edad en edad2.php:
-(comprender que soy aprendiz [paciencia])-.

Código PHP:
Ver original
  1. <?php
  2.  
  3. $Diax="0".($_POST['SelDia']);
  4. $Mesx=($_POST['SelMes']);
  5. $Anyox=($_POST['Selanio']);
  6. $Name=($_POST['TXTnombre']);
  7. //Convertido
  8. $AnyoxC=(Int)$Anyox;
  9. $MesxC=(Int)$Mesx;
  10. $DiaxC=(Int)$Diax;
  11.  
  12. //Fechas actuales
  13. $Fecha=date("d-m-Y");
  14.  
  15. $diaz=date("d");
  16. $mez=date("m");
  17. $anyoz=date("Y");
  18.  
  19. //Resta fecha actual menos fecha del Usuario
  20.  
  21. //$U_anyo=$anyoz-$AnyoxC;
  22.  
  23.  
  24.  
  25.  if (!function_exists("edad")) {
  26. function edad($DiaxC,$MesxC,$AnyoxC){
  27.     //fecha actual
  28.     //$dia=date(j);
  29.     //$mes=date(n);
  30.     //$ano=date(Y);
  31.    
  32.     $diaz=date("d");
  33.     $mez=date("m");
  34.     $anyoz=date("Y");
  35.  
  36. //fecha de nacimiento
  37. $dianaz=date("d", strtotime($DiaxC));
  38. $mesnaz=date("m", strtotime($MesxC));
  39. $anonaz=date("Y", strtotime($AnyoxC));
  40. //si el mes es el mismo pero el dia inferior aun no ha cumplido años, le quitaremos un año al actual
  41. if (($mesnaz == $mez) && ($dianaz > $diaz)) {
  42. $anyoz=($anyoz-1);
  43. }print edad;
  44. //si el mes es superior al actual tampoco habra cumplido años, por eso le quitamos un año al actual
  45. if ($mesnaz > $mez) {
  46. $anyoz=($anyoz-1);}
  47. //ya no habria mas condiciones, ahora simplemente restamos los años y mostramos el resultado como su edad
  48. $edad=($anyoz-$AnyoxC);
  49.  
  50. return $edad;
  51.  
  52. }
  53.  
  54. }
  55. ?>






lo que quiero que me devuelva es, una pagina en la cual diga
"tu fecha de nacimiento es: dd/mm/yyyy"
"tienes XY años" (edad justa contando meses días).

Conseguí parte del código en esta web, pero, no se aplicarlo, e tampoco se donde debería aplicar mencionados textos en un print quizá.


PD: siento el lio de variables DX...
Gracias desde ya,
Saludos,
KsrZ