Foros del Web » Programando para Internet » PHP »

convertir fecha y hora a formato datetime

Estas en el tema de convertir fecha y hora a formato datetime en el foro de PHP en Foros del Web. Hola, tengo dos variables, hora y fecha, y necesito pasarlas a formato DATETIME, osea: 2006-04-02 11:00:00, como puedo hacer esto?...
  #1 (permalink)  
Antiguo 07/04/2006, 05:06
Avatar de midpunto  
Fecha de Ingreso: enero-2004
Ubicación: España Palma de mallorca
Mensajes: 118
Antigüedad: 20 años, 3 meses
Puntos: 0
convertir fecha y hora a formato datetime

Hola, tengo dos variables, hora y fecha, y necesito pasarlas a formato DATETIME, osea: 2006-04-02 11:00:00, como puedo hacer esto?
  #2 (permalink)  
Antiguo 07/04/2006, 05:20
Avatar de turco_7  
Fecha de Ingreso: diciembre-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.044
Antigüedad: 20 años, 4 meses
Puntos: 19
si en las variables ya tenes los datos cargados te queda concatenar ...
para eso tenes que ....:

Código PHP:
<?
$var1 
$var2.$var3;
?>
con el punto se concatena ... para dejar espacio es asi ..
Código PHP:
<?
$var1 
$var2."-(espacio)".$var3;
?>
si no sabes como obtener la fecha y la hora... lo podes hacer con la funcion date()
saludos
__________________
Mi Blog http://turco7.blogspot.com
Usuario Linux : 404289
Mi última página: http://www.digitalservicecba.com.ar - Reparacion de camaras digitales!
  #3 (permalink)  
Antiguo 07/04/2006, 05:38
Avatar de midpunto  
Fecha de Ingreso: enero-2004
Ubicación: España Palma de mallorca
Mensajes: 118
Antigüedad: 20 años, 3 meses
Puntos: 0
ok, pero..

hola, esto esta bien, pero luego en mi consulta sql en la cual hago comparaciones entre fechas, me compara solamente las fechas y no tiene en cuenta la hora, yo creo que es por el formato que le estoy dando al solo unir las dos variables., ¿no hay que darle el formato con date?
  #4 (permalink)  
Antiguo 07/04/2006, 11:05
Avatar de turco_7  
Fecha de Ingreso: diciembre-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.044
Antigüedad: 20 años, 4 meses
Puntos: 19
no, lo que tenes que hacer es ver como almacena la fecha y la hora tu motor de base de datos. De acuerdo a como es el formato armas tu variable . ..
por ejemplo si tu motor tiene un campo fecha y hora donde almacena los datos de la siguiente manera
DD/MM/AA - HH/MM/SS
tendras que concatenar de la misma forma ... me explico ?
saludos
__________________
Mi Blog http://turco7.blogspot.com
Usuario Linux : 404289
Mi última página: http://www.digitalservicecba.com.ar - Reparacion de camaras digitales!
  #5 (permalink)  
Antiguo 07/04/2006, 13:28
Avatar de midpunto  
Fecha de Ingreso: enero-2004
Ubicación: España Palma de mallorca
Mensajes: 118
Antigüedad: 20 años, 3 meses
Puntos: 0
entonces esta bien el formato...

hola he comprobado lo del formato y se graba correctamente, asi que el problema esta en la consulta, que `por otra parte lo intente de varias maneras y sigue sin tener en cuenta las horas.

el formato en que llegan las variables es este:
2006-10-01 11:00:00 que es el que utilizo en la Bd (mysql)

la consulta que realizo es la siguiente:

"SELECT * FROM reservas WHERE (desde_f <= '".$_POST['desde_f']."' AND desde_f >= '".$_POST['hasta_f']."' AND id_auto='".$_POST['id_auto']."') OR (hasta_f <= '".$_POST['desde_f']."' AND hasta_f >= '".$_POST['hasta_f']."' AND id_auto='".$_POST['id_auto']."') OR (desde_f >= '".$_POST['desde_f']."' AND hasta_f <= '".$_POST['hasta_f']."' AND id_auto='".$_POST['id_auto']."')";

Que es lo que esta mal???
Gracias.
  #6 (permalink)  
Antiguo 07/04/2006, 13:43
Usuario no validado
 
Fecha de Ingreso: junio-2004
Mensajes: 37
Antigüedad: 19 años, 10 meses
Puntos: 1
esto sirve de algo?


Código PHP:
<?
// Obtenemos y traducimos el nombre del día
$dia=date("l");
if (
$dia=="Monday"$dia="Lunes";
if (
$dia=="Tuesday"$dia="Martes";
if (
$dia=="Wednesday"$dia="Miércoles";
if (
$dia=="Thursday"$dia="Jueves";
if (
$dia=="Friday"$dia="Viernes";
if (
$dia=="Saturday"$dia="Sabado";
if (
$dia=="Sunday"$dia="Domingo";

// Obtenemos el número del día
$dia2=date("d");

// Obtenemos y traducimos el nombre del mes
$mes=date("F");
if (
$mes=="January"$mes="Enero";
if (
$mes=="February"$mes="Febrero";
if (
$mes=="March"$mes="Marzo";
if (
$mes=="April"$mes="Abril";
if (
$mes=="May"$mes="Mayo";
if (
$mes=="June"$mes="Junio";
if (
$mes=="July"$mes="Julio";
if (
$mes=="August"$mes="Agosto";
if (
$mes=="September"$mes="Setiembre";
if (
$mes=="October"$mes="Octubre";
if (
$mes=="November"$mes="Noviembre";
if (
$mes=="December"$mes="Diciembre";

// Obtenemos el año
$ano=date("Y");
$hora=date("g");
$min=date("i");
$ampm=date("a");

//$fecha= "$dia2 de $mes, $ano, $hora:$min $ampm";
//$fecha= "$ano-$mes-$dia2";
//$Fechaingreso= "$dia2 de $mes, $ano, $hora:$min $ampm";
//$Fechaingreso = "$ano-$mes-$dia2";

$hoy date("H:i:s");
$fecha date("Y-m-d");

    
$MUESTROfecha $fecha;
    
    
$MUESTROyear substr($MUESTROfecha,0,4);
    
$MUESTROmes substr($MUESTROfecha,5,2);
    
$MUESTROdia substr($MUESTROfecha,8,2);

$MUESTRO $MUESTROdia.'-'.$MUESTROmes.'-'.$MUESTROyear;

//$Fechacumplido = $fecha." ".$hoy;
$Fechacumplido $fecha;
$Fechaingreso $fecha;
// 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
*/

// Imprimimos la fecha completa
//echo $fecha;
?>
  #7 (permalink)  
Antiguo 07/04/2006, 13:59
Avatar de midpunto  
Fecha de Ingreso: enero-2004
Ubicación: España Palma de mallorca
Mensajes: 118
Antigüedad: 20 años, 3 meses
Puntos: 0
De acuerdo solucionado, el problema lo tenia la consulta...

por si a alguien le sirve, esto si que esta bien, ahora estoy seguro...

asumiendo que recibimos dos fechas en formato DATETIME, mediante esta consulta seleccionamos ese intervalo de tiempo.

Código PHP:
"SELECT * FROM reservas WHERE ( '".$_POST['desde_f']."'<= desde_f AND '".$_POST['hasta_f']."' >= desde_f AND id_auto='".$_POST['id_auto']."') OR ('".$_POST['desde_f']."' >= desde_f AND '".$_POST['hasta_f']."' <= hasta_f AND id_auto='".$_POST['id_auto']."') OR ('".$_POST['desde_f']."' <= hasta_f AND '".$_POST['hasta_f']."' >= hasta_f AND id_auto='".$_POST['id_auto']."')"
Saludos y 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 22:40.