PHP - Problema con formato de fechas

   
Vista:

Problema con formato de fechas

Publicado por Unexes (124 intervenciones) el 20/02/2016 00:59:41
Hola buenas a tod@s.

Tengo un problema que no consigo solucionar, tengo el siguiente código que me muestra la fecha en mi web en formato americano ( Año, Mes y Día) la extraigo de un campo de mi base de datos Mysql.. Lo que necesito es que en mi web me la ponga en el formato que usamos en españa (Día, Mes, Año)
1
<td  align="center" class="Fecha"><?php echo "Desde:"; ?><?php echo "<a class=\"FechaP\">&nbsp;&nbsp;" .$registro['Fecha Inicio']. ""; ?></td>
Espero me podais ayudar.

Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Problema con formato de fechas

Publicado por Alejandro (198 intervenciones) el 20/02/2016 02:16:42
1
<td  align="center" class="Fecha"><?php echo "Desde:"; ?><?php echo "<a class=\"FechaP\">&nbsp;&nbsp;" .date('d/m/Y',strtotime($registro['Fecha Inicio'])). ""; ?></td>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Problema con formato de fechas

Publicado por Unexes (124 intervenciones) el 20/02/2016 10:42:12
Alejandro, muchas gracias.

Lo que solicite en la ayuda me lo has resuelto y funciona perfecto y te doy las gracias, me coloca la fecha en el formato que usamos en España, pero han surgido dos pequeños contratiempos y tengo que ampliar esta consulta y por lo que veo de este tema entiendes bastante.

El primer contratiempo es que si algún registro no tiene puesta la fecha osea que en la base de datos dicho registro tiene en el campo fecha (0000-00-00) la fecha que me pone por defecto en la web es la del 01-01-1970, ¿Hay alguna forma de que en dicho caso no pusiese nada o lo sustituyese por una frase, por ejemplo algo como "Hoy"?.

El segundo contratiempo es que he sustituido en el código que me pusiste en (.date('d/m/Y' etc...) la m minuscula por una M mayúscula con el fin de que me ponga el mes con las tres primeras letras en lugar de ponérmelo en forma numérica y lógicamente me lo pone en Ingles en lugar de Español (Jan) en lugar de (Ene) correspondiente a Enero, ¿Como podría ponerlo en Español?

Como ves se trato de mejorar el aspecto de mi web,

Muchas gracias por tu ayuda y espero me puedas echar un cable.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con formato de fechas

Publicado por Unexes (124 intervenciones) el 20/02/2016 11:18:42
Alejandro me autocomento

Al primer contratiempo ya le he encontrado la solución con un condicional:
1
2
3
4
5
<?php if ($registro['Fecha Final']== '0000-00-00') { ?>
  	<td  align="center" class="Fecha"><?php echo "Desde:"; ?><?php echo "<a class=\"FechaP\">&nbsp;&nbsp;Hoy"; ?></td>
    <?php }else{  ?>
    <td  align="center" class="Fecha"><?php echo "Desde:"; ?><?php echo "<a class=\"FechaP\">&nbsp;&nbsp;" .date('d/M/Y',strtotime($registro['Fecha Final'])). ""; ?></td>
    <?php } ?>

Es posible que haya otra manera de hacerlo, si fuese mas correcta que esta me encantaría que me la comentaras.

Por el momento voy a ver si encuentro mientras tanto solución al segundo contratiempo.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con formato de fechas

Publicado por Unexes (124 intervenciones) el 20/02/2016 14:49:57
Estoy haciendo estas pruebas pero no se porque cuando hay fecha no me funciona bien,

Ya que me muestra la fecha de hoy y no la que esta puesta en el registro de mi base de datos y ademas me saca a continuación de la fecha un número largo, ejemplo en mi base de datos esta la siguiente fecha "2016-05-10" y me saca lo siguiente:
"20 de Feb de 20161452121200" que se corresponde con la fecha de hoy+1452121200.

esto es lo que estoy probando ¿Que es lo que me falla?
1
2
3
4
5
6
7
8
<tr>
    <?php $meses = array("Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic");  ?>
    <?php if ($registro['Fecha Inicio']== '0000-00-00') { ?>
  	<td  align="center" class="Fecha"><?php echo "Desde:"; ?><?php echo "<a class=\"FechaP\">&nbsp;&nbsp;" .date('d'). ' de ' .$meses[date('n')-1] . ' de ' . date('Y'); ?></td>
    <?php }else{  ?>
    <td  align="center" class="Fecha"><?php echo "Desde el:"; ?><?php echo "<a class=\"FechaP\">&nbsp;&nbsp;" .date('d'). ' de ' .$meses[date('n')-1] . ' de ' . date('Y') ,strtotime($registro['Fecha Inicio']). ""; ?></td>
    <?php } ?>
  </tr>
A ver si alguien me puede ayudar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Alejandro

Problema con formato de fechas

Publicado por Alejandro (198 intervenciones) el 21/02/2016 02:28:03
Desde que conoci el operador ternario lo quiero usar en todo :P es una if simple
(comparacion) ? Verdadero : Falso
1
2
<?php $fecha = $registro['Fecha Final']== '0000-00-00'?'Hoy':date('d/M/Y',strtotime($registro['Fecha Final'])) ?>
 	<td  align="center" class="Fecha"><?php echo "Desde:"; ?><a class="FechaP">&nbsp;&nbsp;<? echo $fecha; ?></td>

Para el idioma dale una leida a ESTE tema, seguro te sirve.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con formato de fechas

Publicado por Unexes (124 intervenciones) el 21/02/2016 02:48:17
Muchas gracias Alejandro por tu respuesta.

Probare tu código y te comentare como me funciona.

Te quiero comentar que ya tengo resuelto los 2 contratiempos y en este momento ya me funciona todo bien, aunque por supuesto probare este ultimo código que me has puesto.

Por supuesto no lo habría logrado sin tu ayuda, así que muchas gracias.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar