برای اینکه نام فیلدهای موجود در یک جدول رو بدست بیاریم باید این کوئری رو اجرا کنیم:
SHOW COLUMNS FROM `tableName`
حالا برای اینکه نام فیلد ها رو هم دستی وارد نکنیم و داینامیک باشه:
require_once 'Classes/PHPExcel.php';
$objPHPExcel = new PHPExcel();
$query = "SHOW COLUMNS FROM `tableName`";
$result = mysql_query($query)or die(mysql_error());
$i=1;
while($row = mysql_fetch_array($result))
{
$query = "SELECT * FROM `tableName`";
$result2 = mysql_query($query)or die(mysql_error());
while($row2 = mysql_fetch_array($result2))
{
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A'.$i, $row2[$row[0]]);
$i++;
}
}
$objPHPExcel->getActiveSheet()->setTitle('abcd');
$objPHPExcel->setActiveSheetIndex(0);
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('excel1.xlsx');
بهینه کردن حلقه ها به عهده خودتون ;)
و برای اینکه لینک دانلود بدید به کاربر کد زیر رو به انتهای کد اضافه کنید:
echo '<a href="excel1.xlsx">dl</a>';