에서 모든 데이터를 제공하지만PHPExcel 내가 하나의 엑셀 시트에 두 테이블에서 내 코드가 작동을 내보내려고 파일 내 코드에서</p> <p>를 Excel로 내 테이블 데이터를 내보낼 <code>PHPExcel</code>를 사용하여 MySQL의
하지 않습니다 문제는 내가 모든 데이터를 가지고있다 - 내가 5 개 행이 난 단지 4
를받을 엑셀 파일에 있어야합니다 경우 내가 무슨 뜻인지 1
를이 내 코드입니다 :
<?php
$project=$_POST['project'];
//populate the data
$row=4;
while($data=mysqli_fetch_object($query)){
$excel->getActiveSheet()->setCellvalue('A'.$row,$data->db_projectid)
->setCellvalue('B'.$row,$data->db_projectname)
->setCellvalue('C'.$row,$data->loc)
//incriment the row
$row++;
}
//make table headers
$excel->getActiveSheet()
->setCellValue('A1','Project')
->setCellValue('A3','#')
->setCellValue('B3','Project Name')
->setCellValue('C3','Location');
if(mysqli_num_rows($activitieQuery)>0){
$row=7;
while($data=mysqli_fetch_object($activitieQuery)){
$excel->getActiveSheet()
->setCellvalue('A'.$row,$data->db_id)
->setCellvalue('B'.$row,$data->db_activityname)
->setCellvalue('C'.$row,$data->db_category)
->setCellvalue('D'.$row,$data->db_priority);
//incriment the row
$row++;
}
//make table headers
$excel->getActiveSheet()
->setCellValue('A6','Activities')
->setCellValue('A7','#')
->setCellValue('B7','Activity Name')
->setCellValue('C7','Category')
->setCellValue('D7','Priority');
}
//write the result to a file
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment; filename="project.xlsx"');
header('Cache-Control:max-age=0');
header('Cache-Control: max-age=1');
$file=PHPExcel_IOFactory::createWriter($excel,'Excel2007');
//output to php output instead of filename
$file->save("php://output");
exit;
?>
문제없이 원하는 모든 데이터를 수신하는 방법은 무엇입니까?
내가 mysqli_num_rows($activitieQuery);
를 인쇄 할 때 내가 5 번
가지고 내가 예를 $data->db_id
을 위해 인쇄하는 경우 난 5 IDS하지 4
를 수신하지만 파일을 Excel로 내보낼 때 내가 5는 어떻게 해결할 수없는 4 개 ID를받을 그?
제 첫 번째 테이블에는 제 문제가 없습니다. 두 번째 테이블 tbl_activities 만 있으면 문제를 해결할 수 있습니다.
이 코드를 트림 (프로그램의 모든 중요하지 않은 부분을 제거)하십시오 도움이 두 번째 쿼리에 대한
$row = 7;
시작 후 헤더로 대체 . 두 가지 목적을 수행합니다. 즉, 간단한 테스트 케이스를 끝까지 실행할 수 있으며, 더 쉽게 읽을 수 있습니다. 예를 들어 헤더 생성 부분은 관련이 없으므로 출력 파일의 모든 단일 열을 알 필요가 없습니다. 또한 문제가 Excel 자체 (예 : 루프의'echo $ data-> db_id')와 연결되어 있는지 의심 스럽기 때문에 Excel 생성 프로세스 외부에서 루프를 테스트 할 수 있습니다. – RandomSeed@RandomSeed 위의 코드를 확인하십시오. 그리고 내 루프에서 echo $ data-> db_id라고 말하면서 4가 아닌 5 개의 id를 받지만 4는 Excel에서 내 질문에 언급됩니다. –