PHPExcel write Excel and save to the server?
15,420
Before going deep, one thing is clear
You haven't executed the query for $result, neither fetch it and on $result1 query you are using it which is not possible,
Same problem exist with $result1
You can use:
$result = mysql_query('select * from table1');
while($fetch_result=mysql_fetch_array($result))
{
$result2 = mysql("select * from table2 where table1_id = '".$fetch_result['table1_id']."'");
while($fetch_result2=mysql_fetch_array($result2)
{
--your code--
But it is preferable to write JOIN instead of these two query
Author by
Murugesh
Updated on June 05, 2022Comments
-
Murugesh almost 2 years
The code I currently have:
<?php /** PHPExcel */ require_once '../Classes/PHPExcel.php'; /** PHPExcel_IOFactory */ require_once '../Classes/PHPExcel/IOFactory.php'; // Create new PHPExcel object $objPHPExcel = new PHPExcel(); // Set properties $objPHPExcel->getProperties()->setCreator("Maarten Balliauw") ->setLastModifiedBy("Maarten Balliauw") ->setTitle("Office 2007 XLSX Test Document") ->setSubject("Office 2007 XLSX Test Document") ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") ->setKeywords("office 2007 openxml php") ->setCategory("Test result file"); $result = 'select * from table1'; for($i=0;$i<count($result);$i++) { $result1 = 'select * from table2 where table1_id = ' . $result[$i]['table1_id']; for ($j=0;$j<count($result1);$j++) { $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A' . $j, $result1[$j]['name']); } // Set active sheet index to the first sheet, so Excel opens this as the first sheet $objPHPExcel->setActiveSheetIndex(0); // Save Excel 2007 file $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save(str_replace('.php', '.xlsx', __FILE__)); // Echo done echo date('H:i:s') . " Done writing file.\r\n"; } ?>
The above code executes and save n no of
.xlsx
files in the folder, but the problem I'm getting is biggestcount(result1)
in thefor
loop executing in all saved excel files.