PHPExcel:在CSV导入中,行融合在一起

时间:2018-08-09 18:30:03

标签: php phpexcel

我正在尝试将CS​​V导入到SQL库中,我正在使用Scriptcase CRM。

导入过程似乎还不错...它回显了sql输入。第一行可以,但是在第二行中,第一行融合,在第二行和第一行融合……等等。

NSERT INTO abonado_table (id_abonado,dn,nip,curp_id,cac_id, modelo_id,modalidad,canal_de_venta,folio_abd,status,envio,icc_virtual,encuesta,contacto_id,monto_probable_recarga,fvc_estimada,sim_fisico,recuperada_mdc,equipo_liberado,creado_usr,modificado_usr,creado_fecha,modificado_fecha) VALUES (DEFAULT,'3149902172','7777','102329','104','2060','Prepago','','','5','','','','16','60','2018-07-31','0','','No','admin','rosa.valenzuela','2018-07-30 13:47:00','2018-07-30 13:47:00');
...
INSERT INTO abonado_table (id_abonado,dn,nip,curp_id,cac_id, modelo_id,modalidad,canal_de_venta,folio_abd,status,envio,icc_virtual,encuesta,contacto_id,monto_probable_recarga,fvc_estimada,sim_fisico,recuperada_mdc,equipo_liberado,creado_usr,modificado_usr,creado_fecha,modificado_fecha) VALUES (DEFAULT,'3149902172','7777','102329','104','2060','Prepago','','','5','','','','16','60','2018-07-31','0','','No','admin','rosa.valenzuela','2018-07-30 13:47:00','2018-07-30 13:47:00''9311251885','8888','102330','104','4389','Prepago','','','5','{null}','','','17','60','2018-07-31','0','','Si','admin','rosa.valenzuela','2018-07-30 13:50:00','2018-07-30 13:50:00');
...
INSERT INTO abonado_table (id_abonado,dn,nip,curp_id,cac_id, modelo_id,modalidad,canal_de_venta,folio_abd,status,envio,icc_virtual,encuesta,contacto_id,monto_probable_recarga,fvc_estimada,sim_fisico,recuperada_mdc,equipo_liberado,creado_usr,modificado_usr,creado_fecha,modificado_fecha) VALUES (DEFAULT,'3149902172','7777','102329','104','2060','Prepago','','','5','','','','16','60','2018-07-31','0','','No','admin','rosa.valenzuela','2018-07-30 13:47:00','2018-07-30 13:47:00''9311251885','8888','102330','104','4389','Prepago','','','5','{null}','','','17','60','2018-07-31','0','','Si','admin','rosa.valenzuela','2018-07-30 13:50:00','2018-07-30 13:50:00''4157165854','7777','102331','253','484','Prepago','Especialista','','4','{null}','','','18','60','2018-07-31','0','','','admin','rosa.valenzuela','2018-07-30 0:00:00','2018-07-30 20:20:00');
...

这是代码,怎么了?

    $objReader  = new PHPExcel_Reader_CSV();
    $objReader->setReadDataOnly(true);
    $xslpath = "/opt/NetMake/v9/wwwroot/import_xls/".{xsl_input};
    $objPHPExcel = $objReader->load($xslpath);
    $worksheetData  = $objReader->listWorkSheetInfo($xslpath);
    $totalRows  = $worksheetData[0]['totalRows'];
    $totalColumns = $worksheetData[0]['totalColumns'];
    $lastColumn  = $objPHPExcel->getActiveSheet()->getHighestColumn();
    $sheet   = $objPHPExcel->getSheet(0);
    $rowDate  = "";

    for($row=1;$row<=$totalRows;$row++){
     for($column=0;$column<$totalColumns;$column++){
      if($column==$totalColumns-1){
       $rowDate.="'".utf8_decode($objPHPExcel->getActiveSheet()->getCellByColumnAndRow($column,$row)->getValue())."'";

      }else{
       $rowDate.="'".utf8_decode($objPHPExcel->getActiveSheet()->getCellByColumnAndRow($column,$row)->getValue())."',";
      }
     }

         echo "INSERT INTO abonado_table (id_abonado,dn,nip,curp_id,cac_id, modelo_id,modalidad,canal_de_venta,folio_abd,status,envio,icc_virtual,encuesta,contacto_id,monto_probable_recarga,fvc_estimada,sim_fisico,recuperada_mdc,equipo_liberado,creado_usr,modificado_usr,creado_fecha,modificado_fecha) VALUES (DEFAULT,".$rowDate.");<br />...<br />";
}
sc_alert($totalRows." registros agregados!");

1 个答案:

答案 0 :(得分:0)

简单的答案。您在错误的位置输入了字符串声明 移动

     $rowDate  = "";

之间

for($row=1;$row<=$totalRows;$row++){
 for($column=0;$column<$totalColumns;$column++){

看起来像

for($row=1;$row<=$totalRows;$row++){
 $rowDate = ""; 
 for($column=0;$column<$totalColumns;$column++){