Foros del Web » Programando para Internet » PHP »

Problema Datetime PHPExcel

Estas en el tema de Problema Datetime PHPExcel en el foro de PHP en Foros del Web. Hola Estimados, Tengo el siguiente problema, cuando intento importar un archivo .xlsx a una base de datos mysql, los valores de las columnas del Excel ...
  #1 (permalink)  
Antiguo 28/05/2015, 07:57
 
Fecha de Ingreso: agosto-2014
Mensajes: 12
Antigüedad: 9 años, 8 meses
Puntos: 0
Pregunta Problema Datetime PHPExcel

Hola Estimados,

Tengo el siguiente problema, cuando intento importar un archivo .xlsx a una base de datos mysql, los valores de las columnas del Excel se guardan como 0000-00-00 00:00:00

Los campos de la BD son de tipo Datetime y en el Excel están como 24-05-2015 18:50:00

Les dejo el código a ver si me pueden ayudar!
Gracias de antemano!

Código PHP:
// Cargando la hoja de calculo
$objReader = new PHPExcel_Reader_Excel2007(); //instancio un objeto como PHPExcelReader(objeto de captura de datos de excel)
$objPHPExcel $objReader->load("bak_".$archivo); //carga en objphpExcel por medio de objReader,el nombre del archivo
$objFecha = new PHPExcel_Shared_Date();
 
// Asignar hoja de excel activa
$objPHPExcel->setActiveSheetIndex(0); //objPHPExcel tomara la posicion de hoja (en esta caso 0 o 1) con el setActiveSheetIndex(numeroHoja)
 
// Llenamos un arreglo con los datos del archivo xlsx
$i=1//celda inicial en la cual empezara a realizar el barrido de la grilla de excel
$param=0;
$contador=0;
while(
$param==0//mientras el parametro siga en 0 (iniciado antes) que quiere decir que no ha encontrado un NULL entonces siga metiendo datos
{
 
$A=$objPHPExcel->getActiveSheet()->getCell('A'.$i)->getCalculatedValue();
$B=$objPHPExcel->getActiveSheet()->getCell('B'.$i)->getCalculatedValue();
$C=$objPHPExcel->getActiveSheet()->getCell('C'.$i)->getCalculatedValue();
$D=$objPHPExcel->getActiveSheet()->getCell('D'.$i)->getCalculatedValue();
$E=$objPHPExcel->getActiveSheet()->getCell('E'.$i)->getCalculatedValue();
$F=$objPHPExcel->getActiveSheet()->getCell('F'.$i)->getCalculatedValue();
$G=$objPHPExcel->getActiveSheet()->getCell('G'.$i)->getCalculatedValue();
$H=$objPHPExcel->getActiveSheet()->getCell('H'.$i)->getCalculatedValue();
$I=$objPHPExcel->getActiveSheet()->getCell('I'.$i)->getCalculatedValue();
$J=$objPHPExcel->getActiveSheet()->getCell('J'.$i)->getCalculatedValue();
$K=$objPHPExcel->getActiveSheet()->getCell('K'.$i)->getFormattedValue();
$L=$objPHPExcel->getActiveSheet()->getCell('L'.$i)->getCalculatedValue();
$M=$objPHPExcel->getActiveSheet()->getCell('M'.$i)->getCalculatedValue();
$N=$objPHPExcel->getActiveSheet()->getCell('N'.$i)->getCalculatedValue();
 
$query=("insert into servicio_recorrdio (porteador,tren,prog_especial,circulacion,tipo_equipo,num_equipo,km_prog,km_reales,est_origen,est_destino,h_salida_prog,h_salida_real,h_llegada_prog,h_llegada_real) values('$A','$B','$C','$D','$E','$F','$G','$H','$I','$J','$K','$L','$M','$N')");
mysql_query($query); 
  #2 (permalink)  
Antiguo 08/08/2016, 10:12
 
Fecha de Ingreso: julio-2007
Mensajes: 109
Antigüedad: 16 años, 9 meses
Puntos: 1
Respuesta: Problema Datetime PHPExcel

Me tope, con este mismo problema, lo solucione de la sgte. manera.

$contacto["fecha_nacimiento"] = date( 'Y-m-d H:i:s', strtotime(str_replace('/','-',$row_excel["birthdate"])));

y antes de importarlo, la columna del archivo en excel que contiene la fecha, debe estar en formato de celda cadena de texto.

Saludos,

Etiquetas: datetime, fecha, mysql, phpexcel
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 18:13.