Foros del Web » Programando para Internet » PHP »

Problema al crear una fecha para campo datetime

Estas en el tema de Problema al crear una fecha para campo datetime en el foro de PHP en Foros del Web. Hola que tal, tengo un problema al guardar en un campo datetime y nose si estara bien que lo ponga aqui porque estoy trabajando con ...
  #1 (permalink)  
Antiguo 11/05/2008, 12:48
 
Fecha de Ingreso: mayo-2008
Mensajes: 26
Antigüedad: 15 años, 11 meses
Puntos: 1
Problema al crear una fecha para campo datetime

Hola que tal, tengo un problema al guardar en un campo datetime y nose si estara bien que lo ponga aqui porque estoy trabajando con PHP y MySQL. Les explico:

Tengo que guardar la hora y fecha en un campo datetime, la hora y fecha se seleccionan por separado, tengo un codigo que me separa cada elemento (hora, minutos, segundos, dia, mes y año); para crear la fecha y hora juntos uso el siguiente codigo:

$date_time=date("Y-m-d H:i:s", mktime($hora,$min,$seg,$mes,$dia,$ano));

Este dato se guarda en la tabla, el problema es que si se selecciona una hora pasado meridiano "PM" (Ej. 13, 14, 15,...., 20, etc) se guarda como si fuera de la mañana (1, 2,3,.... ,8, etc) y no se como solucionarlo...

Ya he probado guardarlos por separado y alli no hay problema.

Desde ya les estoy agradecido por las respuestas...
  #2 (permalink)  
Antiguo 11/05/2008, 17:05
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Re: Problema al crear una fecha para campo datetime

Código PHP:
 date('Y-m-d H:i:s',time()); 
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #3 (permalink)  
Antiguo 11/05/2008, 23:44
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Re: Problema al crear una fecha para campo datetime

recuerda el formato de date() ya que... H no es igual a h....
una entrega horas 0-24 y la otra 1-12
  #4 (permalink)  
Antiguo 12/05/2008, 10:23
 
Fecha de Ingreso: mayo-2008
Mensajes: 26
Antigüedad: 15 años, 11 meses
Puntos: 1
Re: Problema al crear una fecha para campo datetime

Cita:
Iniciado por eddwinpaz Ver Mensaje
Código PHP:
 date('Y-m-d H:i:s',time()); 
Gracias eddwinpaz, pero yo no quiero guardar el tiempo actual, porque time() devuelve el tiempo transcurrido GMT si mas no me equivoco (en pocas palabras tiempo actual).


Cita:
Iniciado por pateketrueke Ver Mensaje
recuerda el formato de date() ya que... H no es igual a h....
una entrega horas 0-24 y la otra 1-12
Gracias pateketrueke, claro que si. Yo quiero que se guarde en formato de 0-23, ojo en date() con "H" no hay 24.

Pero como les digo al guardar separados la hora y fecha, la hora se guarda con el formato 0-23, pero cuando lo junto lo guarda con el formato 01-12.

Sigo buscando la solucion, gracias de todas maneras....
  #5 (permalink)  
Antiguo 12/05/2008, 11:19
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Re: Problema al crear una fecha para campo datetime

lo siento.... 0-23 :D .... animo!!!
  #6 (permalink)  
Antiguo 12/05/2008, 11:28
Avatar de farra  
Fecha de Ingreso: marzo-2008
Ubicación: Aqui estoy
Mensajes: 574
Antigüedad: 16 años, 1 mes
Puntos: 20
Re: Problema al crear una fecha para campo datetime

string date ( string formato [, int marca_de_tiempo] )

Ejemplo 1. Ejemplos de date()

Código PHP:
<?php
// definir la zona horaria predeterminada a usar. Disponible desde PHP 5.1
date_default_timezone_set('UTC');


// Imprime algo como: Monday
echo date("l");

// Imprime algo como: Monday 15th of August 2005 03:12:46 PM
echo date('l dS \of F Y h:i:s A');

// Imprime: July 1, 2000 is on a Saturday
echo "July 1, 2000 is on a " date("l"mktime(000712000));

/* usar las constantes en el parametro formato */
// imprime algo como: Mon, 15 Aug 2005 15:12:46 UTC
echo date(DATE_RFC822);

// imprime algo como: 2000-07-01T00:00:00+0000
echo date(DATE_ATOMmktime(000712000));
?>

Ejemplo 2. Escapar caracteres en date()

Código PHP:
<?php
// imprime algo como: Wednesday the 15th
echo date("l \\t\h\e jS");
?>

Ejemplo 3. Ejemplo de date() y mktime()
Código PHP:
<?php
$manyana        
mktime(000date("m")  , date("d")+1date("Y"));
$ultimo_mes     mktime(000date("m")-1date("d"),   date("Y"));
$siguiente_anyo mktime(000date("m"),   date("d"),   date("Y")+1);
?>

Ejemplo 4. Formato de date()
Código PHP:
<?php
// Asumiendo que hoy es: March 10th, 2001, 5:16:18 pm

$hoy date("F j, Y, g:i a");                 // March 10, 2001, 5:16 pm
$hoy date("m.d.y");                         // 03.10.01
$hoy date("j, n, Y");                       // 10, 3, 2001
$hoy date("Ymd");                           // 20010310
$hoy date('h-i-s, j-m-y, it is w Day z ');  // 05-16-17, 10-03-01, 1631 1618 6 Fripm01
$hoy date('\i\t \i\s \t\h\e jS \d\a\y.');   // It is the 10th day.
$hoy date("D M j G:i:s T Y");               // Sat Mar 10 15:16:08 MST 2001
$hoy date('H:m:s \m \i\s\ \m\o\n\t\h');     // 17:03:17 m is month
$hoy date("H:i:s");                         // 17:16:17
?>
__________________
Firma:
Es mas dificil para el mono entender que el hombre desciende de el....

PD: Siempre doy karma al que me da una buena respuesta... ;0)
  #7 (permalink)  
Antiguo 12/05/2008, 11:59
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Re: Problema al crear una fecha para campo datetime

si deseas almacenar los tiempos en segundos y usas MySQL selecciona timestamp eso te devuelve todo en segundos lo cual puedes manejar a tu vendrio.... saludos..
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #8 (permalink)  
Antiguo 12/05/2008, 18:52
 
Fecha de Ingreso: mayo-2008
Mensajes: 26
Antigüedad: 15 años, 11 meses
Puntos: 1
Re: Problema al crear una fecha para campo datetime

Gracias a todos, pero no soluciono el problema que tengo. Ya se como usar la funcion date(), a mi parecer es el mktime, nose.....
Voy a empezar a ver otra forma de solucionar este problemita.
Si alguien sabe como hacerlo, espero que me ayude.
Gracias...
  #9 (permalink)  
Antiguo 13/05/2008, 08:42
 
Fecha de Ingreso: mayo-2008
Mensajes: 26
Antigüedad: 15 años, 11 meses
Puntos: 1
De acuerdo Re: Problema al crear una fecha para campo datetime

Hola ya solucione mi problema, casi una semana probando y hasta molestandolos, y lo solucione en 5 minutos....

Como les contaba, tenia que armar mi fecha y hora para un campo datetime con:

$date_time=date("Y-m-d H:i:s", mktime($hora,$min,$seg,$mes,$dia,$ano));

El problema era que el dato $min, lo recogia con todo y simbolo am/pm y por eso no me guardaba en el campo datetime, saque el simbolo usando substr y listoooo

Ahora si podre teminar este trabajito...

Gracias a todos y disculpen las molestias....

Saludos
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 11:06.