2011-06-14 5 views
10

나는 csv 파일을 출력하기 위해 PHPExcel을 얻을 수없는 이유를 알아 내려고 벽에 머리를 두드리는 중입니다. 이상하게도 인터넷 익스플로러에서 작동합니다 - CSV로 출력하지만 다른 모든 브라우저에서는 엑셀이 열리지 않는 xls로 출력합니다.PHPExcel을 CSV로 내보낼 수 없습니다.

모든 포인터는 대단히 감사하겠습니다.

error_reporting(E_ALL); 
$username="blah"; 
$password="blahz"; 
$database="hollatme"; 
$sqlsrv="localhizzost"; 
date_default_timezone_set('US/Central'); 
$currenttime=date("m-d-Y"); 

require_once 'Classes/PHPExcel.php'; 
$objPHPExcel = new PHPExcel(); 
$objPHPExcel->getProperties(); 


$viewinv = mysql_connect($sqlsrv,$username,$password); 
if (!$viewinv) { die('Could not connect to SQL server. Contact administrator.'); } 
mysql_select_db($database, $viewinv) or die('Could not connect to database. Contact administrator.'); 
$query = "select somestuff from someplace;"; 
$result = mysql_query($query); 

if ($result = mysql_query($query) or die(mysql_error())) { 
    $objPHPExcel = new PHPExcel(); 
    $objPHPExcel->getActiveSheet()->setTitle('CYImport'.$currenttime.''); 

$rowNumber = 1; 
$headings = array('abunchof','differentheadings'); 
$objPHPExcel->getActiveSheet()->fromArray(array($headings),NULL,'A'.$rowNumber); 
$rowNumber++; 
while ($row = mysql_fetch_row($result)) { 
    $col = 'A'; 
    foreach($row as $cell) { 
     $objPHPExcel->getActiveSheet()->setCellValue($col.$rowNumber,$cell); 
     $col++; 
    } 
    $rowNumber++; 
} 


    $objWriter = new PHPExcel_Writer_CSV($objPHPExcel); 
$objWriter->setDelimiter(','); 
$objWriter->setEnclosure(''); 
$objWriter->setLineEnding("\r\n"); 
$objWriter->setSheetIndex(0); 
$objWriter->save('blah '.$currenttime.'.csv'); 


    header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); 
    header('Content-Disposition: attachment;filename="CY Import '.$currenttime.'"..csv"'); 
    header('Cache-Control: max-age=0'); 

    $objWriter->save('php://output'); 
    exit(); 
} 
echo 'Contact your Administrator. No data received from server.'; 

답변

8

당신은 당신은 신사 학자 있습니다

header('Content-type: text/csv'); 
+3

에 MIME 형식을 변경을 시도 할 수 있습니다. 미친 소품, 당신은 내 문제를 해결했습니다. – floppyraid

관련 문제