convertir string a date

43810 visitas 8 respuestas

mi consulta es como convierto formato string a date

por ejemplo tomo las varibles dia= 1, mes= 12 , ano= 2006

<?php
// esto obviamente esta mal 
$fechade=strtotime($ano."-".$mes."-".$dia);   
// esto tampoco funca
$fechade=$ano."-".$mes."-".$dia;                      
?>

necesito convertirla para consultar sobre la bbdd

gracias

por coke desde Chile

Registrado desde: 02 Jan 06

Respuestas

0 0

Creo que la función mktime de PHP te puede ayudar.

http://ve.php.net/manual/es/function.mktime.php

Saludos,

SYSBYTES

por Sysbytes desde Venezuela

Registrado desde: 17 Apr 06
0 0

Convertir de String a "date"

qué es "date" exactamente?

por Arias desde España

Registrado desde: 15 Apr 03
0 0

Arias , se refiere al formato en que esta en la base de datos, en el fondo es para hacer la comparacion. despues de recibir los datos de dia mes y año por separado y como string.(en la base de dato esta como date)

un poquito de codigo :

<?php
$dia=$_POST['dia'];
$mes=$_POST['mes'];
$ano=$_POST['ano'];

$fecha=mktime(0,0,0,$dia,$mes,$ano);

$resul=mysql_query("SELECT * FROM ",$db);
?>

Gracias SYSBYTES , vamos a probar

por coke desde Chile

Registrado desde: 02 Jan 06
0 0

necesito convertirla para consultar sobre la bbdd

En la conversión también habría que ver en que formato esta dicha fecha en la bd, si unix timestamp, datetime o cualquier otro para tenerlo en cuenta a la hora de hacer el query.

por thessoro desde España

Registrado desde: 31 Jul 03
0 0

Y aunque sea un campo Date de MySQL puedes cambiar el formato de la fecha del propio campo, asi que no aclara nada...

por Arias desde España

Registrado desde: 15 Apr 03
0 0

Buenas de nuevo

En la bbdd esta como date y dice : tipo "DATE", "predeterminado 0000-00-00" (YYYY-MM-DD), eso es todo lo que dice la bbdd.( no es ni TIMESTAMP ni DATETIME ).

no se como se ve lo otro que dicen.

En el fondo lo que quiero hacer es tomar dos fechas y hacer una busqueda en la base de datos por ejemplo entre fecha desde y fecha hasta , y recibo los datos con formularios separados con las clasicas cajas recibo los datos por separado (dia-mes-año), entonces antes de hacer la consulta con el query , debo convertir esos datos separados a formato date para consultarlos con el campo de la bbdd, como estel codigo.

<?php
$dia=$_POST['dia'];
$mes=$_POST['mes'];
$ano=$_POST['ano'];

$fecha=mktime(0,0,0,$dia,$mes,$ano);   # esta funcion me da un numero entero (visto por echo)

$resul=mysql_query("SELECT * FROM ",$db);

tabla WHERE $fecha <= fechatabla && $fecha >= fechatabla",$db);
 #( obviamente esta mal escrito arriba pero no me deja escribir y se cae , (tabla viene despues de FROM) pero es la idea )
?>

gracias

por coke desde Chile

Registrado desde: 02 Jan 06
0 0

Nadie podria orientarme ?

por coke desde Chile

Registrado desde: 02 Jan 06
2 0

prueba así:

date("Y-m-d", mktime($mes,$dia,$año));  

esto te devuelve la fecha en el formato año-mes-dia ej. 2009-01-01  

saludos! 

por Lluna desde España

Registrado desde: 26 Jan 10