Ver Mensaje Individual
  #7 (permalink)  
Antiguo 27/03/2006, 18:38
Avatar de kalijunfan
kalijunfan
 
Fecha de Ingreso: febrero-2004
Ubicación: Montevideo, Uruguay
Mensajes: 96
Antigüedad: 20 años, 2 meses
Puntos: 0
hola utopiko, bueno justamente a eso me refería que la fecha tenía que estar en el formato que está guardado en la base de datos y mysql guarda las fechas en los campos de tipo date en el formato YYYY-MM-DD o sea en php sería como vos dijiste Y-m-d.
sabés después de mucha práctica con php como solucioné yo este problema? usando listas desplegables, o sea en el formulario no uso un campo de texto, uso 3 listas desplegables, una del 1 al 31 para los días, otra del 1 al 12 para los meses y otra la armo partiendo del año actual, si el usuario puede ingresar fechas anteriores al año actual entonces empiezo el cálculo los años anteriores que corresponda y sinó empiezo en el año actual y muestro todos los años que quiera. en caso que quiera mostrar solamente el año actual lo meto en un campo oculto.
bueno y después de que envío el form armo la fecha en el formato que quiero por ejemplo:

Código PHP:
<? $esteanio date("Y");
$cincomas $esteanio 5?>
<form action="mipagina.php" method="post">
Día: <select name="dia" size="1">
<? for ($i 1$i <= 31$i++) echo '<option value="'.$i.'">'.$i.'</option>';?>
</select>
Mes: <select name="mes" size="1">
<? for ($i 1$i <= 12$i++) echo '<option value="'.$i.'">'.$i.'</option>';?>
</select>
Año: <select name="anio" size="1">
<? for ($i $esteanio$i <= $cincomas$i++) echo '<option value="'.$i.'">'.$i.'</option>';?>
</select><input type="submit">
</form>
y en el archivo mipagina.php pongo lo siguiente:

Código PHP:
<? if (isset($dia) && isset($mes) && isset($anio)) {
    
$lafecha date("Y-m-d"strtotime("$anio-$mes-$dia"));
    echo 
$lafecha;
?>
en este caso simplemente estoy mostrando el valor de la variable $lafecha pero evidentemente una vez que tenés ese valor en la variable podés usarla para lo que quieras :)

espero que te sirva, bye