Foros del Web » Programando para Internet » PHP »

Como insertar fechas en mysql con php

Estas en el tema de Como insertar fechas en mysql con php en el foro de PHP en Foros del Web. Saludos, veran lo que me ocurre es que no logro guardar la fecha en la BD, actualmente el campo fecha lo estoy manejando como "date" ...
  #1 (permalink)  
Antiguo 08/09/2009, 12:28
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Como insertar fechas en mysql con php


Saludos, veran lo que me ocurre es que no logro guardar la fecha en la BD, actualmente el campo fecha lo estoy manejando como "date" pero no logro insertar la fecha en la tabla deseada, y lo envio como "YYYY-MM-DD" por lo que les pido su ayuda para que finalmente pueda guardar la dichosa fecha, como pueden ver mando el dia mes y año por separado, pero he leido la cadena ya hecha con $fechae y $fecha_s y si me da los valores insertados, solo que no la pasa a la BD, como puedo solucionar este problema


$date1="$yearl-$mesl-$dial";
$tDate = strtotime($date1);
$dateToMySQL1 = date("Y-m-d",$tDate);

$date2="$years-$mess-$dias";
$tDate2 = strtotime($date2);
$dateToMySQL2 = date("Y-m-d",$tDate2);

$fechae= $dateToMySQL1;
$fecha_s= $dateToMySQL2;

$conecta= mysql_connect("localhost","root", "");
mysql_select_db("basedatos", $conecta);
$resulta=mysql_query("insert into tabla(fechae, fechas) values('$fechae', '$fecha_s')");
mysql_close($conecta);
  #2 (permalink)  
Antiguo 08/09/2009, 12:34
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Como insertar fechas en mysql con php

Te sugiero que hagas un var_dump() a cada una de las variables para que veas cual es el valor que tienen.
Código PHP:
Ver original
  1. var_dump($date1);
  2. var_dump($tDate);
  3. //así sucesivamente
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 08/09/2009, 12:52
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como insertar fechas en mysql con php

En la primera me sale
string(9) "2009-01-2" /* (fecha insertada) */

Y en la segunda
int(1230850800)

y lo demas sale igual, segun la funcion
y si busque antes de preguntar, solo que a todos los demas
al menos les guardaba puros ceros, y a mi ni eso me hace

Última edición por RedMew; 08/09/2009 a las 13:03
  #4 (permalink)  
Antiguo 08/09/2009, 13:18
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Como insertar fechas en mysql con php

Te sugiero ver cual es el error que lanza mysql usando mysql_error()
Código PHP:
Ver original
  1. $resulta=mysql_query("insert into tabla(fechae, fechas) values('$fechae', '$fecha_s')") or die(mysql_error());
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 08/09/2009, 13:27
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como insertar fechas en mysql con php

Que tal, el resultado me sale "bool(false)"
pero como soluciono este problema
  #6 (permalink)  
Antiguo 08/09/2009, 13:33
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Como insertar fechas en mysql con php

ahi me perdi como que te sale bool(false)
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #7 (permalink)  
Antiguo 08/09/2009, 13:39
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como insertar fechas en mysql con php

Pues imprime el resultado de $resulta, y eso me salio, la verdad no se como imprimir ese tipo de errores en php, pues nunca lo habia hecho antes, quizas ni siquiera sea eso pero otra cosa no se me ocurrio, sino es asi disculpa y sino es mucho pedir dime como hacerle para hacer eso
  #8 (permalink)  
Antiguo 08/09/2009, 13:47
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Como insertar fechas en mysql con php

Imposible,¿tu copiaste lo que te indique? Copia esto y me dejas saber

Código PHP:
Ver original
  1. $resulta=mysql_query("insert into tabla(fechae, fechas) values('$fechae', '$fecha_s')") or die(mysql_error());
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #9 (permalink)  
Antiguo 08/09/2009, 13:51
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como insertar fechas en mysql con php

Jeje, mil disculpas, solo me sale esto
#1452 - Cannot add or update a child row:a foreign key constraint fails (`basededatos/rep`, CONSTRAINT `rep_ibfk_3` FOREIGN KEY (`RFC`) REFERENCES `detcte` (`RFC`) ON DELETE CASCADE)

Última edición por RedMew; 08/09/2009 a las 14:00
  #10 (permalink)  
Antiguo 09/09/2009, 10:22
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como insertar fechas en mysql con php

Bueno, ese prob ya lo solucione, pero ahora solo me deja poner la fecha directamente en mysql pero con php no, alguies sabra porque pasa esto?
  #11 (permalink)  
Antiguo 09/09/2009, 10:26
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Como insertar fechas en mysql con php

Coloca lo que has hecho, para ver el cambio que hiciste
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #12 (permalink)  
Antiguo 09/09/2009, 10:27
Avatar de bacdavi  
Fecha de Ingreso: junio-2006
Ubicación: http://localhost/
Mensajes: 351
Antigüedad: 17 años, 10 meses
Puntos: 7
Respuesta: Como insertar fechas en mysql con php

consejo, si tenes instalado phpMyAdmin ejecuta tu SQL en la consola, o mejor aun si tenes instalado MySQL Query Browser...

Espero haberte ayudado aunque sea tarde... =D
  #13 (permalink)  
Antiguo 09/09/2009, 10:32
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como insertar fechas en mysql con php

Cita:
Iniciado por abimaelrc Ver Mensaje
Coloca lo que has hecho, para ver el cambio que hiciste
La verdad carge la BD que tenia guardada antes de colocar las relaciones, y en esa si me deja introducir fechas pero solo desde phpMyAdmin (tengo instalado el wampserver)
  #14 (permalink)  
Antiguo 09/09/2009, 10:40
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como insertar fechas en mysql con php

Cita:
Iniciado por bacdavi Ver Mensaje
consejo, si tenes instalado phpMyAdmin ejecuta tu SQL en la consola, o mejor aun si tenes instalado MySQL Query Browser...

Espero haberte ayudado aunque sea tarde... =D
gracias x el consejo, pero en modo consola me dice lo mismo
  #15 (permalink)  
Antiguo 09/09/2009, 10:50
Avatar de bacdavi  
Fecha de Ingreso: junio-2006
Ubicación: http://localhost/
Mensajes: 351
Antigüedad: 17 años, 10 meses
Puntos: 7
Respuesta: Como insertar fechas en mysql con php

Proba con tu php asi:
Código PHP:
$sql_insert="insert into tabla(fechae, fechas) values('".$fechae."', '".$fecha_s."')";
$resulta=mysql_query($sql_insert)or die('Error en mysql '.mysql_error()); 
  #16 (permalink)  
Antiguo 09/09/2009, 11:05
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como insertar fechas en mysql con php

Cita:
Iniciado por bacdavi Ver Mensaje
Proba con tu php asi:
Código PHP:
$sql_insert="insert into tabla(fechae, fechas) values('".$fechae."', '".$fecha_s."')";
$resulta=mysql_query($sql_insert)or die('Error en mysql '.mysql_error()); 
Hola, ahora me muestra Error en mysql Column count doesn't match value count at row 1, pero se supone que me lo esta convirtiendo a fecha con esta linea o no? $dateToMySQL2 = date("Y-m-d",$tDate2);
  #17 (permalink)  
Antiguo 09/09/2009, 11:46
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como insertar fechas en mysql con php

Como mas informacion, aqui dejo la tabla completa
create table rep(fechae date,
fecha_s date,
hora time,
fpago varchar(20),
RFC varchar(9),
numero int,
placas varchar(9));
como FK tengo a las ultimas 3
  #18 (permalink)  
Antiguo 09/09/2009, 12:24
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Como insertar fechas en mysql con php

redmew...

haz una impresión de la variable $sql_insert y dinos como sale.
Esa misma linea, copiala en phpmyadmin y dinos que error se muestra.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #19 (permalink)  
Antiguo 09/09/2009, 12:33
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como insertar fechas en mysql con php

El resultado que arroja es Error en mysql Column count doesn't match value count at row 1
En verdad les agradezco mucho su ayuda, y disculpen tantas molestias que les estoy causando, y sino digo algo muy claro solo diganme pues todavia soy algo novato con el tema, para asi tratar de explicarme mejor
  #20 (permalink)  
Antiguo 09/09/2009, 12:38
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Como insertar fechas en mysql con php

redmew...
El error se refiere a que estas ingresando mas parámetros al insert de los que estas declarando. O simplemente, las columnas no coinciden en numero.

Por eso es necesario muestres la cadena resultante que se está ejecutando desde php.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #21 (permalink)  
Antiguo 09/09/2009, 12:41
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Como insertar fechas en mysql con php

Vamos por parte. Primero vamos a darle
Código PHP:
Ver original
  1. var_dump($dateToMySQL1);
  2. var_dump($dateToMySQL2);
Me dejas saber
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #22 (permalink)  
Antiguo 09/09/2009, 12:57
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como insertar fechas en mysql con php

Cita:
Iniciado por huesos52 Ver Mensaje
redmew...
El error se refiere a que estas ingresando mas parámetros al insert de los que estas declarando. O simplemente, las columnas no coinciden en numero.

Por eso es necesario muestres la cadena resultante que se está ejecutando desde php.
Ahora si, finalmente lo logre el resultado es:
insert into recepcion(fechae, fecha_s, hora, pago, facturar, RFC, numero, placas) values('2009-01-01', '2009-01-03', '', '', 'Tecnologico', 'GUBF200888', '', 'FOSI-610')
que es lo que supuestamente envie pero no lo guarda
  #23 (permalink)  
Antiguo 09/09/2009, 12:59
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como insertar fechas en mysql con php

Cita:
Iniciado por abimaelrc Ver Mensaje
Vamos por parte. Primero vamos a darle
Código PHP:
Ver original
  1. var_dump($dateToMySQL1);
  2. var_dump($dateToMySQL2);
Me dejas saber
El resultado es:
string(10) "2009-01-01"
string(10) "2009-01-03"
  #24 (permalink)  
Antiguo 09/09/2009, 13:05
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Como insertar fechas en mysql con php

Cita:
Iniciado por RedMew Ver Mensaje
Ahora si, finalmente lo logre el resultado es:
insert into recepcion(fechae, fecha_s, hora, pago, facturar, RFC, numero, placas) values('2009-01-01', '2009-01-03', '', '', 'Tecnologico', 'GUBF200888', '', 'FOSI-610')
que es lo que supuestamente envie pero no lo guarda
Como ves las fechas las está insertando bien.
Estos valores vacíos, pueden ser espacios vacíos?

veo que el campo numero (el penúltimo) está declarado como int. Pero envías unas comillas simples. Eso es un error de sintaxis.

Revisa los tipos de datos que manejas y la forma como los estas enviando.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #25 (permalink)  
Antiguo 09/09/2009, 13:21
Avatar de RedMew  
Fecha de Ingreso: septiembre-2009
Ubicación: Rioverde SLP
Mensajes: 111
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como insertar fechas en mysql con php

Cita:
Iniciado por huesos52 Ver Mensaje
Como ves las fechas las está insertando bien.
Estos valores vacíos, pueden ser espacios vacíos?

veo que el campo numero (el penúltimo) está declarado como int. Pero envías unas comillas simples. Eso es un error de sintaxis.

Revisa los tipos de datos que manejas y la forma como los estas enviando.
Muchas gracias a todos y en verdad disculpen las molestias causadas, ya se guarda finalmente la fecha, con respecto al campo numero, pues esta vacio porque es foranea, y debe tomar el valor de otra tabla, pero hay voy de poquito de en poquito con esto, nuevamente GRACIAS =)
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:43.