PHPExcel 不提供来自 Mysql 的所有数据

标签 php mysql phpexcel

我使用 PHPExcel 将我的表格数据导出到 excel 文件

在我的代码中,我尝试从一个 Excel 工作表中的 2 个表导出我的代码工作但是

问题是我有所有数据 - 1

我的意思是如果我有 5 行应该在 excel 文件中我只收到 4

这是我的代码:

<?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 个 id 而不是 4

但是当我导出到 excel 文件时,我收到 4 个 id 而不是 5 我该如何解决这个问题?

对于我的第一个表我没有任何问题我的问题是第二个表 tbl_activities 只有任何人知道如何解决这个问题?

最佳答案

您从 $row = 7; 开始进行第二个查询,然后将其替换为标题

->setCellValue('A7', '#')
->setCellValue('B7', 'Activity Name')
->setCellValue('C7', 'Category')
->setCellValue('D7', 'Priority')
->setCellValue('E7', 'Supplier')
...

因此将 $row = 7; 替换为 $row = 8; 应该会有帮助

关于PHPExcel 不提供来自 Mysql 的所有数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46073595/

相关文章:

php - 更改页面时保持 session (用户 ID)相同

php - 如果数据库中没有记录,则分页错误

php - 如果表单字段输入为空而不是在数据库 CodeIgniter 中更新

PHP PDO 如何显示 top SQL 计数

php - 如何从 PHP 生成受密码保护的电子表格?

javascript - php 不解析来自 ajax 发送的 multipart/form-data 表单数据的数据

php - Symfony2 概念问题 : general bundles vs. 特定问题

php - 多对多表SQL选择问题

php - 使用php读取.xlsx文件并写入数据库

PHPEXCEL 如何在有特殊字符的情况下获取单元格值