0

我正在尝试将 .xls excel 上的 DB 字段打印为:

$sql="select * from bill ";

$result=mysql_query($sql);
while($row = mysql_fetch_array($result)){
    $ARP=$row['ARP_name'] ;
    $nam=$row['student_name'] ;

    $doc=array("ARP name"=>array('ARPname'=>($ARP),'name'=>$nam));
}
$xls->addArray ( $doc );

但打印结果只是 DB 的最后一条记录,我希望所有记录都被打印

4

3 回答 3

4

因为你的大括号是错误的:

$doc=array("ARP name"=>array('ARPname'=>($ARP),'name'=>$nam));}
                                                              ^

大括号必须在此行之后:

$xls->addArray ( $doc );

因此,完整的代码将是:

$result=mysql_query($sql);
while($row = mysql_fetch_array($result)){
    $ARP=$row['ARP_name'] ;
    $nam=$row['student_name'] ;

    $doc=array("ARP name"=>array('ARPname'=>($ARP),'name'=>$nam));
    $xls->addArray ( $doc );
}
于 2012-12-05T18:25:32.877 回答
2

将最后一行移到 while 循环中:

while($row = mysql_fetch_array($result)){
    $ARP=$row['ARP_name'] ;
    $nam=$row['student_name'] ;

    $doc=array("ARP name"=>array('ARPname'=>($ARP),'name'=>$nam));
    $xls->addArray ( $doc );
}
于 2012-12-05T18:25:42.787 回答
1

你有$xls->addArray你的while循环之外的调用,你需要把它移到里面:

$result=mysql_query($sql);
while($row = mysql_fetch_array($result)){
    $ARP=$row['ARP_name'] ;
    $nam=$row['student_name'] ;

    $doc=array("ARP name"=>array('ARPname'=>($ARP),'name'=>$nam));
    $xls->addArray ( $doc );
}
于 2012-12-05T18:25:38.317 回答