Foros del Web » Programando para Internet » PHP »

Consulta sobre fechas en PHP usando date

Estas en el tema de Consulta sobre fechas en PHP usando date en el foro de PHP en Foros del Web. Hola, mi problema es este: he estado tratando de crear un formulario (lo tengo hecho) en el que el usuario da su fecha de nacimiento ...
  #1 (permalink)  
Antiguo 03/07/2013, 11:11
jorgemibanez
Invitado
 
Mensajes: n/a
Puntos:
Pregunta Consulta sobre fechas en PHP usando date

Hola, mi problema es este: he estado tratando de crear un formulario (lo tengo hecho) en el que el usuario da su fecha de nacimiento en tres campos de select (Día, Mes, Año), pero el código (de los muchos que he intentado) PHP cuando va a insertar los datos en la BD, me devuelve 0000-00-00, ¿Cómo debo hacer para que ingrese la fecha correcta?, mis códigos son:

PHP (connect_db)
<?php
$link = mysql_connect("localhost","root","");
if ($link) {
mysql_select_db("register",$link);
}
?>

PHP (register)
<?php
$name = $_POST['firstname'];
$lastname = $_POST['lastname'];
$email = $_POST['reg_email__'];
$password = $_POST['reg_passwd__'];
$birthday_year = $_POST['birthday_year'];
$birthday_month = $_POST['birthday_month'];
$birthday_day = $_POST['birthday_day'];
$birthday = $_POST['birthday_year']."-".$_POST['birthday_month']."-".$_POST['birthday_day'];
$sex = $_POST['select_sex'];
$reqlen = strlen ($name) * strlen($lastname) * strlen($email) * strlen($password) * strlen($birthday_day) * strlen($birthday_month) * strlen($birthday_year) * strlen($sex);
if ($reqlen > 0) {
require("connect_db.php");
$password = md5($password);
mysql_query("INSERT INTO users VALUES('$name','$lastname','$email','$password','$ birthday_day','$birthday_month','$birthday_year',' birthday','$sex','')");
mysql_close($link);
echo "Se ha completado su registro con éxito";
} else {
echo "Por favor, rellene todos los campos.";
}
?>

Mi tabla SQL pide:
name
lastname
email
password
birthday_year - tipo year(4)
birthday_month - tipo year(2)
birthday_day - tipo year(2)
birthday ========== Este es el dato que ingresa como 0000-00-00, se trata de tipo date, quiero que tenga los valores respectivos de año, mes y día dados arriba.
user - auto-increment

Pues verán, todo lo ingresa bien, menos birthday, si alquien puede ayudarme se lo agradecería mucho.
  #2 (permalink)  
Antiguo 03/07/2013, 11:21
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Consulta sobre fechas en PHP usando date

Para que te funcione MySQL te esta "sugiriendo" la respuesta: debes ingresar en el campo DATE un string con el formato 'YYYY-MM-DD'
__________________
Salu2!
  #3 (permalink)  
Antiguo 03/07/2013, 11:38
 
Fecha de Ingreso: noviembre-2008
Mensajes: 150
Antigüedad: 15 años, 5 meses
Puntos: 1
Respuesta: Consulta sobre fechas en PHP usando date

yo creo que la mejor forma seria ASI .. LA MAS SIMPLE:

Código PHP:
$birthday_year $_POST['birthday_year'];
$birthday_month $_POST['birthday_month'];
$birthday_day $_POST['birthday_day'];


$birthday date("Y-m-d"strtotime("$birthday_year-$birthday_month-$birthday_day"));

echo 
$birthday

Etiquetas: date, formulario, mysql, registro, select, sql, tabla, usando
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:59.