problemas con fechas php--->MySQL
Hola, tengo un formulario donde el usuario mete la fecha. Quiero ke meta la fehca en formato DD-MM-YYYY y que se guarde en la base de datos con formato YYYY-MM-DD ya que es el ke tiene MySQL por defecto.
Como puedo hacer esto??? existe otra solucion????
Como puedo hacer esto??? existe otra solucion????
como sabras la fecha se guarda como string entonces
puedes hacer lo sgte:
$Dia = $fecha[0].$fecha[1];
$Mes = $fecha[3].$fecha[4];
$Anio = $fecha[6].$fecha[7].$fecha[8].$fecha[9];
y lo concatenas
$NuevaFecha = $Anio."-".$Mes."-".$Dia
puedes hacer lo sgte:
$Dia = $fecha[0].$fecha[1];
$Mes = $fecha[3].$fecha[4];
$Anio = $fecha[6].$fecha[7].$fecha[8].$fecha[9];
y lo concatenas
$NuevaFecha = $Anio."-".$Mes."-".$Dia
no le hagas caso a pablo es un idiota para aconsejar eso lo que dice pe se ve un poco mas decente
yo a mi gusto no uso los formatos de fecha de mysql lo guardo como timestamp.
De todas formas tienes una funcion de mysql que es :
SELECT DATE_FORMAT(campo_fecha, '%e %M %Y') FROM tabla;
de todas formas lo que dice pablo si le he entendido bien tampoco es tan loco, puedes hacer un CONCAT() y dentro con las funciones:
DAYOFMONTH
MONTH
YEAR
sacar los datos como quieras
si no me equivoco sería algo asi:
SELECT CONCAT(DAYOFMONTH(campo_fecha),'/',MONTH(campo_fecha),'/',YEAR(campo_fecha)) FROM tabla;
Saludos!! :)
De todas formas tienes una funcion de mysql que es :
SELECT DATE_FORMAT(campo_fecha, '%e %M %Y') FROM tabla;
de todas formas lo que dice pablo si le he entendido bien tampoco es tan loco, puedes hacer un CONCAT() y dentro con las funciones:
DAYOFMONTH
MONTH
YEAR
sacar los datos como quieras
si no me equivoco sería algo asi:
SELECT CONCAT(DAYOFMONTH(campo_fecha),'/',MONTH(campo_fecha),'/',YEAR(campo_fecha)) FROM tabla;
Saludos!! :)
Bueno ok no preguntabas como obtener los datos sino como guardarlos, sorry:
que te parece asi?
$fecha = "DD/MM/YYYY"; // eso es lo que metería el usuario en el campo de texto
$aFecha = explode("/",$fecha);
$nFecha = $aFecha[3]."-".$aFecha[2]."-".$aFecha[1];
print $nFecha; // eso imprimira: YYYY-MM-DD
que te parece asi?
$fecha = "DD/MM/YYYY"; // eso es lo que metería el usuario en el campo de texto
$aFecha = explode("/",$fecha);
$nFecha = $aFecha[3]."-".$aFecha[2]."-".$aFecha[1];
print $nFecha; // eso imprimira: YYYY-MM-DD
como se haria para por ejemplo si el usuario a introducido algo en una fecha determinada y hasta otra fecha determinada saliese un cartelito "nuevo",por que me esta matando....
