【问题标题】:Dynamic Table generation inside the while loop including phpexcel在while循环内生成动态表,包括phpexcel
【发布时间】:2015-01-06 20:23:34
【问题描述】:

这是我的 While 循环,我总共有 5 条记录匹配结果,所以我使用 while 循环来处理这个,

当我在 phpexcel 中执行此操作时,我正在通过以下方式处理此问题。

Head 最多有A7 列,所以我将从A8 开始,

我将拥有一组A8-A20,如下面的屏幕截图所示

所以当我继续循环时,第一个条目将来自A8-A20,然后是A22-A34,A36-A48(每个条目之间将有 2 列)。

为此,我在循环开始之前将 $flag_head 声明为 8,并在循环结束时添加 14。 (作为第一步,我给第一行或条目上色,以便它继续打印n 条目数的彩色列)

但是我坚持最初的事情,当我执行它时,它总是只在 A8 列打印,尽管它有很多条目。我错过了什么?

$loopquery = "SELECT * FROM prsprimary_details where PrsdkID = '11'";

if ($loopresult = $mysqli->query($loopquery)) 
{
  $flag_head=8;
  while ($row = $loopresult->fetch_assoc()) 
{
    cellColor('A'.$flag_head, 'ccccff');
    cellColor('B'.$flag_head, 'ccccff');
    cellColor('C'.$flag_head, 'ccccff');
    cellColor('D'.$flag_head, 'ccccff');
    cellColor('E'.$flag_head, 'ccccff');
    cellColor('F'.$flag_head, 'ccccff');
    cellColor('G'.$flag_head, 'ccccff');
    cellColor('H'.$flag_head, 'ccccff');
    cellColor('I'.$flag_head, 'ccccff');
    cellColor('J'.$flag_head, 'ccccff');
    cellColor('K'.$flag_head, 'ccccff');
    cellColor('L'.$flag_head, 'ccccff');
    $flag_head+14;
}
}

【问题讨论】:

  • 我能看到更多代码吗,因为我认为你缺少的东西。我希望像 $obj->cellColor('L'.$flag_head, 'ccccff');我没有看到你的 phpexcel 类的实例。
  • 对不起,最后一行代码是什么:$flag_head+14; ?应该是:$flag_head++; ?
  • 应该像$flag_head += 14;一样简单
  • @MarkBaker : 正好 $flag_head += 14;是需要

标签: php loops mysqli while-loop phpexcel


【解决方案1】:

正如@MarkBaker 所建议的那样,您的代码中的一个小改动是有意义的。

你有$flag_head+14; 这意味着在循环结束时它将向$flag_head 添加14,但不会将其分配给任何变量。但是,如果您这样做 $flag_head += 14; 或类似 $flag_head = $flag_head + 14; 的东西。我推荐 $flag_head += 14; 这会将 14 添加到 $flag_head 所以在下一个循环中它将添加另一个 14 并一直持续到循环结束。

所以,您需要做的就是将$flag_head+14; 更改为$flag_head += 14;

希望对你有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-07
    • 2018-10-07
    • 2023-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-24
    相关资源
    最近更新 更多