2012-10-22 2 views
0

PHP를 사용하여 Excel 시트를 생성하여 동적 Excel 시트를 생성하는 데 사용하는 방법이나 코드를 사용하고 싶습니다. 내가 겪고있는 문제에 대한 자세한 정보는 스크린 샷 이미지를 확인하십시오. screenshot of required excel sheet format 누구든지이 문제를 해결할 수 있도록 도와 주시겠습니까? 미리 감사드립니다.편집 할 수없는 셀이 거의없는 PHP를 사용하여 Excel 시트 생성

다음 코드 예제를 사용하고 있습니다.

$result = mysql_query("SELECT * FROM ".$pre."customers"); 
    if (!$result) die('Couldn\'t fetch records'); 
    $num_fields = mysql_num_fields($result); 
    $headers = array(); 

    for ($i = 0; $i < $num_fields; $i++) 
    { 
     $headers[] = mysql_field_name($result , $i); 
     mysql_field_name($result , $i); 
    } 

    $fp = fopen('php://output', 'w'); 
    if ($fp && $result) 
    { 
      header('Content-Type: text/csv'); 
      header('Content-Disposition: attachment; filename="export1.csv"'); 
      header('Pragma: no-cache'); 
      header('Expires: 0'); 
      fputcsv($fp, $headers); 

      while ($row = mysql_fetch_row($result)) 
      { 
       fputcsv($fp, array_values($row)); 
      } 

      die; 
    } 

그러나 나는이 엑셀 시트에 모든 셀을 고정시킬 수 없다. 그래서 PHP 메서드 또는 클래스를 사용하여 내 목적을위한 엑셀 시트를 생성하는 데 적합합니다?

+0

Stackoverflow는 특정 질문을 권장합니다. 몇 가지 코드를 입력하고 예기치 않은 것을 설명하면 누군가가 도움을 얻을 수 있습니다. – mrd

+0

누군가가 대답하기에 충분한 설명 일 수 있습니까? –

+0

그게 전부입니다. 또한 JQuery 및 PHP와 같은 태그를 추가하는 것을 고려하십시오. 이 방법은 귀하의 질문에 더 많은 관심을 가질 수 있습니다. – mrd

답변

0
public function get_excel($err = array()) 
{ 

    // Clear any previous output 
ob_end_clean(); 
// I assume you already have your $result 
$search = ($this->uri->segment(2))?$this->uri->segment(2):'key'; 
$result=mysql_query("select * from job"); 
$num_fields = mysql_num_fields($result); 


// Fetch MySQL result headers 
$headers = array(); 
//$headers[] = "serial no"; 
for ($i = 0; $i < $num_fields; $i++) { 


    $headers[] = strtoupper(mysql_field_name($result , $i)); 
} 


// Filename with current date 
$current_date = date("y/m/d"); 
$filename = "MyFileName" . $current_date . ".csv"; 

// Open php output stream and write headers 
$fp = fopen('php://output', 'w'); 
if ($fp && $result) { 
    header('Content-Type: text/csv'); 
    header('Content-Disposition: attachment; filename='.$filename); 
    header('Pragma: no-cache'); 
    header('Expires: 0'); 

    // Write mysql headers to csv 
    fputcsv($fp, $headers); 
    //$row_tally = 0; 
    // Write mysql rows to csv 
    while ($row = mysql_fetch_array($result, MYSQL_NUM)) { 
    // $row_tally = $row_tally + 1; 
    //echo $row_tally.","; 
     fputcsv($fp, array_values($row)); 
    } 
    die; 
} 

} 
0

가능하면 CSV가 더 부족한 것처럼 보입니다. Excel에서 가져 오기 기능을 알고 있습니까? 당신은 쉽게 자신의 PHP 서비스 등에서 CSV (하단 부분)로만 동적 콘텐츠를 수신하도록 문서를 설정할 수 있습니다 ...

내 Excel 버전은 덴마크어이지만 그 아래에 데이터 탭과 " 인터넷에서 ":

+0

답장을 보내 주셔서 감사합니다. 이 문제에 대한 또 다른 해결책을 찾으십시오. 왜냐하면 내가 정확히 필요한 것을 설명 할 수 없기 때문입니다. 다시 한번 감사드립니다. –

관련 문제