Foros del Web » Programando para Internet » PHP »

Ayuda!! Como convierto un int a datetime???

Estas en el tema de Ayuda!! Como convierto un int a datetime??? en el foro de PHP en Foros del Web. Hola a todos!!! Tengo un problema y no soy capaz de encontrar la solucion... Tengo una variable $fecha en formato INT en una tabla, y ...
  #1 (permalink)  
Antiguo 30/10/2010, 13:26
 
Fecha de Ingreso: octubre-2010
Mensajes: 27
Antigüedad: 14 años
Puntos: 0
Desacuerdo Ayuda!! Como convierto un int a datetime???

Hola a todos!!!

Tengo un problema y no soy capaz de encontrar la solucion...

Tengo una variable $fecha en formato INT en una tabla, y necesito copiar esa misma fecha a otra tabla diferente pero... el problema es que la variable $fecha2 es de tipo datetime...

Y no se como convertir la fecha original de tipo int a datetime...

He mirado en muchos foros pero no doy con la solucion...
POR FAVOR... QUE ALGUIEN ME AYUDE...

muchas gracias!!!
  #2 (permalink)  
Antiguo 30/10/2010, 16:12
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 22 años, 11 meses
Puntos: 4
Respuesta: Ayuda!! Como convierto un int a datetime???

Hola,

Lo que tienes que hacer es manipular el orden de la variable, de modo que quede en el formato date de mysql que es yyyy-mm-dd

Por decir algo si tu variable viene, suponiendo el dia de hoy:

$fecha=30102010;

Lo que tienes que hacer es :

$fecha=substr($fecha,4,4)."-".substr($fecha,2,2)."-".substr($fecha,0,2);

Esto te la dejará como 2010-10-30 y la podrás insertar correctamente.

Espero sea lo que buscabas.

Saludos !!!
__________________
EL LIMITE ES EL UNIVERSO
  #3 (permalink)  
Antiguo 30/10/2010, 16:30
 
Fecha de Ingreso: octubre-2010
Mensajes: 27
Antigüedad: 14 años
Puntos: 0
Pregunta Respuesta: Ayuda!! Como convierto un int a datetime???

Hola jpogsistem!!
muchas gracias por tu pronta respuesta... pero me temo que es un poco mas complicado...
Veras, mi variable $fecha es de tipo int11 y el contenido de la misma es un numero entero que no tiene sentido alguno.
te escribo como esta implementado...

$sdate = JRequest::getVar('sdate');
$s_hour = (int) JRequest::getVar('s_hour');
$s_min = (int) JRequest::getVar('s_minute');
$edate = JRequest::getVar('edate');
$e_hour = (int) JRequest::getVar('e_hour');
$e_min = (int) JRequest::getVar('e_minute');

$this->_session->getParameter('workspace'));
$user = $this->_session->getUser();
$now = $this->_db->Quote(time());

$ts_sdate = $this->_db->Quote(strtotime($sdate." $s_hour:$s_min:00"));
$ts_edate = $this->_db->Quote(strtotime($edate." $e_hour:$e_min:00"));

El contenido de la variable $ts_edate = 1248104916....
mi pregunta es:....

a partir de $ts_edate.... como obtengo la conversion a tipo datetime?
yyyy-mm-dd hh:mm:ss

Gracias de nuevo!!!
  #4 (permalink)  
Antiguo 30/10/2010, 16:50
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 22 años, 11 meses
Puntos: 4
Respuesta: Ayuda!! Como convierto un int a datetime???

Hola,

No estoy seguro (espero no estar diciendo una barbaridad), pero creo que lo que tienes es una fecha en formato UNIX.................entonces intenta :


Código PHP:
echo date('Y-m-d H:i:s'$ts_edate); 
En todo caso fijate en :

http://co.php.net/manual/es/function.date.php

Espero lo resuelvas
__________________
EL LIMITE ES EL UNIVERSO
  #5 (permalink)  
Antiguo 30/10/2010, 17:44
 
Fecha de Ingreso: octubre-2010
Mensajes: 27
Antigüedad: 14 años
Puntos: 0
Pregunta Respuesta: Ayuda!! Como convierto un int a datetime???

Hola de nuevo!...

acabo de probar lo que me comentas... pero me sale error al usarlo..

He probado dos formas:

1- $new_sdate = $ts_sdate;
$new_edate = $ts_edate;

echo date('Y-m-d H:i:s',$new_sdate);
echo date('Y-m-d H:i:s',$new_edate);

y la segunda:

$new_sdate = date('Y-m-d H:i:s',$ts_sdate);
$new_edate = date('Y-m-d H:i:s',$ts_edate);

y despues hago la consulta....

Cita:

$query = "INSERT INTO #__jcalpro2_events(extid,cal_id,owner_id,title,des cription,cat,approved,private,start_date,end_date, recur_until,rec_monthly_day_list,rec_yearly_on_mon th_list,published)"
. "\n VALUES ($id,'1',$user->id,$title,$content,$project,'1','1',$new_sdate,$n ew_edate,$new_edate,'0','0','1')";
$this->_db->setQuery($query);
$this->_db->query();
Este es el error que me sale...

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ',,'0','0','1')' at line 2 SQL=INSERT INTO jos_jcalpro2_events(extid,cal_id,owner_id,title,de scription,cat,approved,private,start_date,end_date ,recur_until,rec_monthly_day_list,rec_yearly_on_mo nth_list,published) VALUES (34,'1',66,'Evento2','','11','1','1',,,,'0','0','1 ')

Si te fijas bien en el error sql, se refiere a los campos de las fechas....
que puede ser?

Te agradezco mucho tu tiempo
  #6 (permalink)  
Antiguo 30/10/2010, 18:29
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 22 años, 11 meses
Puntos: 4
Respuesta: Ayuda!! Como convierto un int a datetime???

Y si haces :

$new_edate = date('Y-m-d H:i:s',$ts_edate);

echo $new_edate;

que te sale ?

De donde sacaste ese codigo ? en algun lado debe decir el formato con el que manjen las fechas....
__________________
EL LIMITE ES EL UNIVERSO
  #7 (permalink)  
Antiguo 31/10/2010, 06:07
 
Fecha de Ingreso: octubre-2010
Mensajes: 27
Antigüedad: 14 años
Puntos: 0
Respuesta: Ayuda!! Como convierto un int a datetime???

Igual... me sale el mismo error....

el codigo inicial pertenece al componente Projectfork, manejo y administracion de proyectos.. y quiero que los eventos que se creen en PF, se copien en el componente jcalpro que es un calendario.

ya no se que hacer... la verdad...
  #8 (permalink)  
Antiguo 31/10/2010, 12:11
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 22 años, 11 meses
Puntos: 4
Respuesta: Ayuda!! Como convierto un int a datetime???

Intenta lo que dicen aqui............usan como parametro de entrada in int :

http://php.net/manual/en/function.da...ate.parameters
__________________
EL LIMITE ES EL UNIVERSO
  #9 (permalink)  
Antiguo 02/11/2010, 06:45
 
Fecha de Ingreso: octubre-2010
Mensajes: 27
Antigüedad: 14 años
Puntos: 0
Respuesta: Ayuda!! Como convierto un int a datetime???

Perdona por el retraso... he estado liado y no he tenido tiempo de ponerme ni de contestarte...

ya lo he intentado.... de hecho todo lo que he intentado ha sido con la funcion date, como puedes ver en los posts anteriores...
utilizo el date(formato que quiero, variable int)... pero no funciona... no se si estare haciendo algo mal... pero no doy con el problema....
  #10 (permalink)  
Antiguo 03/11/2010, 13:10
 
Fecha de Ingreso: octubre-2010
Mensajes: 27
Antigüedad: 14 años
Puntos: 0
Respuesta: Ayuda!! Como convierto un int a datetime???

Hola jpogsistem...

al final no he conseguido convertir en datetime la variable $fecha del tipo INT.
Me conformo de momento con la fecha, aunque no consigo la hora...

si lo soluciono, sin duda lo escribire por aqui.
Muchas gracias de nuevo por tu tiempo!

Un saludo

Etiquetas: datetime, int
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 21:29.