Foros del Web » Programando para Internet » PHP »

problema con la fecha!

Estas en el tema de problema con la fecha! en el foro de PHP en Foros del Web. Hola amigos del foro, estoy realizando unos reportes en pdf para un sistema... La libreria que utilizo es ezpdf, muy buena libreria... el problema radica ...
  #1 (permalink)  
Antiguo 13/04/2011, 15:19
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 44
Antigüedad: 16 años, 5 meses
Puntos: 0
problema con la fecha!

Hola amigos del foro, estoy realizando unos reportes en pdf para un sistema...
La libreria que utilizo es ezpdf, muy buena libreria...
el problema radica cuando tengo que traer la fecha para mostrar los datos en el formato (d-m-Y) y me lo trae como (Y-m-d).
Les facilito el codigo para ver si me puede dar una mano.

--------------------------------------------
<?php
require_once '../../includes/cnx.php';
$profesional=$_POST['doctores'];

$sql2=mysql_query("SELECT nombres, apellidos, cod_prof FROM profesionales WHERE cod_prof=$profesional",$con);
$row2 = mysql_fetch_array($sql2);
$nom_prof=$row2['nombres'];
$ap_prof=$row2['apellidos'];



$fech=explode('-',$_POST['fecha']);
$fecha=$fech[2].'-'.$fech[1].'-'.$fech[0];
$fech1=explode('-',$_POST['fecha1']);
$fecha1=$fech1[2].'-'.$fech1[1].'-'.$fech1[0];

require_once('../../librerias/ezpdf/class.ezpdf.php');
$pdf =& new Cezpdf('a4');
$pdf->selectFont('../../librerias/ezpdf/fonts/Times-Roman.afm');
$pdf->ezSetCmMargins(1,1,1.5,1.5);

$conexion = mysql_connect("localhost", "root", "");
mysql_select_db("sao", $conexion);
$queEmp = "SELECT * FROM agenda_turno WHERE cod_prof=$profesional and fecha between '$fecha' and '$fecha1'";
$resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
$totEmp = mysql_num_rows($resEmp);

$ixx = 0;
while($datatmp = mysql_fetch_assoc($resEmp)) {
$totalImporte = $totalImporte + $datatmp[importe];
$ixx = $ixx+1;
$data[] = array_merge($datatmp, array('num'=>$ixx));
}
$titles = array(
'cod_turno'=>'<b>Código</b>',
'nombre'=>'<b>Nombre</b>',
'apellido'=>'<b>Apellido</b>',
'telefono'=>'<b>Teléfono</b>',
'fecha'=>'<b>Fecha</b>',
'hora'=>'<b>Hora</b>',
'motivo'=>'<b>Motivo</b>'


);
$options = array(
'shadeCol'=>array(0.9,0.9,0.9),
'xOrientation'=>'center',
'width'=>500
);
$txttit = "<b>SAO - SISTEMA DE ADMINISTRACIÓN OFTALMOLÓGICO</b>\n";
$txttit.= "Reporte de turnos \n";
$txttit.= "<b>Profesional:</b> $ap_prof, $nom_prof \n";


$pdf->ezText($txttit, 9);
$pdf->ezText("\n\n\n", 3);
$pdf->ezTable($data, $titles, '', $options);
$pdf->ezText("\n\n\n", 10);
/*$pdf->ezText("<b>Total: $</b> ".$totalImporte, 10);*/
$pdf->ezText("<b>Fecha:</b> ".date("d/m/y"), 10);
$pdf->ezStream();

?>
-----------------------------------------
arriba lo que hago es convertir la fecha para que hag bien la query

en esta parte...
'cod_turno'=>'<b>Código</b>',
'nombre'=>'<b>Nombre</b>',
'apellido'=>'<b>Apellido</b>',
'telefono'=>'<b>Teléfono</b>',
'fecha'=>'<b>Fecha</b>',
'hora'=>'<b>Hora</b>',
'motivo'=>'<b>Motivo</b>'

agrego los campos de la BD que quiero que me traiga cuando armo el pdf
el problema es que como la fecha la trae de la BD, lo hace en el formato Y-m-d y quiero que me lo muestre como d-m-Y ya que es asi como se deberia leer...

queria saber si la puedo convertir justo antes de armar dicho pdf

Espero su respuesta!

Saludos

Diego
  #2 (permalink)  
Antiguo 13/04/2011, 15:25
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 19 años, 5 meses
Puntos: 88
Respuesta: problema con la fecha!

aqui tienes una idea de como puedes invertir una fecha
Código PHP:
Ver original
  1. $fecha=implode('-',array_reverse(explode('-',$_POST['fecha'])));
  2. echo $fecha;
saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #3 (permalink)  
Antiguo 13/04/2011, 15:49
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 44
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: problema con la fecha!

hola eits, gracias por la respuesta!
trate de ponerle dentro del while pero no pasa nada.

while($datatmp = mysql_fetch_assoc($resEmp)) {
$totalImporte = $totalImporte + $datatmp[importe];
$fecha=implode('-',array_reverse(explode('-',$_POST['fecha'])));
$ixx = $ixx+1;
$data[] = array_merge($datatmp, array('num'=>$ixx));

Me gustaria saber como lo puedo implementar en el codigo

Gracias

Diego
  #4 (permalink)  
Antiguo 13/04/2011, 16:00
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 19 años, 5 meses
Puntos: 88
Respuesta: problema con la fecha!

eso era una idea, mira
Código PHP:
Ver original
  1. $fecha='2011-04-13';
  2. echo implode('-',array_reverse(explode('-',$fecha)));
esto te devolvería 13-04-2011, si por el contrario usas
Código PHP:
Ver original
  1. $fecha='13-04-2011';
  2. echo implode('-',array_reverse(explode('-',$fecha)));
este daría 2011-04-13, también se puede cambiar el símbolo de separación, suponiendo que tienes
Código PHP:
Ver original
  1. $fecha='2011/04/13';
  2. echo implode('-',array_reverse(explode('/',$fecha)));
este te daría como resultado 13-04-2011, fíjate que se cambia la / por -, también puede ser a la inversa
Código PHP:
Ver original
  1. $fecha='2011-04-13';
  2. echo implode('/',array_reverse(explode('-',$fecha)));
y el resultado sería 13/04/2011, estos solo son ejemplos, tu debes de usarlo como y donde lo necesites.
saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.

Etiquetas: fecha
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 12:56.