Php 该代码重复表标题:

Php 该代码重复表标题:,php,mysql,Php,Mysql,我有一个将数据从数据库写入ms文档的代码:它工作得很好,但它重复了如下表标题: 订户姓名订户账号s卡号解码器号联系人号安装日期激活日期 计时器0。。 订户姓名订户账号s卡号解码器号联系人号安装日期激活日期 Musajhujassa 90334342 2013。。 订户姓名订户账号s卡号解码器号联系人号安装日期激活日期 但我希望它像这样显示 订户姓名订户账号s卡号解码器号联系人号安装日期激活日期 定时器6737363743 Vc 67676 Dc456 07855625426 2013。2013

我有一个将数据从数据库写入ms文档的代码:它工作得很好,但它重复了如下表标题: 订户姓名订户账号s卡号解码器号联系人号安装日期激活日期 计时器0。。 订户姓名订户账号s卡号解码器号联系人号安装日期激活日期 Musajhujassa 90334342 2013。。 订户姓名订户账号s卡号解码器号联系人号安装日期激活日期

但我希望它像这样显示 订户姓名订户账号s卡号解码器号联系人号安装日期激活日期 定时器6737363743 Vc 67676 Dc456 07855625426 2013。2013 穆萨7878VC3454。Dc56 089898892 2013 Musajhujassa 87u8u78u8u Vc4565 Dc786 089887387 2013 Dread S77879 Vc 45454 Dc5653 078563536 2013

   <?php
   #this connects to my database
   include("db.inc.php"); 
   ?>
       <?php
     $query='SELECT  * 
    from clientinfo';
    $result = mysql_query($query,$con) or die (mysql_error($con));
        $fp = fopen("report.doc", 'w+'); 

    while($record = mysql_fetch_array($result)){
    $firstname = $record['firstname'];
        $refno = $record['refno'];
        $smartcard = $record['smartcard'];
        $decoderno = $record['decoderno'];
        $cell = $record['cell'];
        $date= $record['date'];
     #create word document starts here
    $str ="<table border=\"1\"><tr><td><b>Subscriber's Name</b></td><td>  <b>     Subscriber's      Account No.</b></td> <td><b>S-Card No.</b></td><td><b>Decoder     No.</b>    </td>
    <td><b>Contact No</b></td><td><b>Date Installed</b></td><td><b>Activation Date</b></td>
    </tr>
     </tr><tr><td>$firstname</td><td >$refno</td><td >$smartcard</td><td>$decoderno</td>
    <td>$cell</td><td >$date</td><td >..</td>
    </tr></table>";
       fwrite($fp, $str);  
     }
       fclose($fp);
    ?>


它会重复,因为标题在while循环中

  <?php
   #this connects to my database
   include("db.inc.php"); 
   ?>
       <?php
     $query='SELECT  * 
    from clientinfo';
    $result = mysql_query($query,$con) or die (mysql_error($con));
        $fp = fopen("report.doc", 'w+'); 

$str ="<table border=\"1\"><tr><td><b>Subscriber's Name</b></td><td>  <b>     Subscriber's      Account No.</b></td> <td><b>S-Card No.</b></td><td><b>Decoder No.</b>    </td>";

while($record = mysql_fetch_array($result)){
    $firstname = $record['firstname'];
        $refno = $record['refno'];
        $smartcard = $record['smartcard'];
        $decoderno = $record['decoderno'];
        $cell = $record['cell'];
        $date= $record['date'];
     #create word document starts here
   $str.="
    <td><b>Contact No</b></td><td><b>Date Installed</b></td><td><b>Activation Date</b></td>
    </tr>
     </tr><tr><td>$firstname</td><td >$refno</td><td >$smartcard</td><td>$decoderno</td>
    <td>$cell</td><td >$date</td><td >..</td>
    </tr></table>";


fwrite($fp, $str);  
     }
       fclose($fp);
    ?>

你在循环中犯了错误

     $str = "<table border=\"1\"><tr><td><b>Subscriber's Name</b></td><td>  <b>     Subscriber's      Account No.</b></td> <td><b>S-Card No.</b></td><td><b>Decoder     No.</b>    </td>
    <td><b>Contact No</b></td><td><b>Date Installed</b></td><td><b>Activation Date</b></td>
    </tr>
     </tr>";
   fwrite($fp, $str);  
    while($record = mysql_fetch_array($result)){
    $firstname = $record['firstname'];
        $refno = $record['refno'];
        $smartcard = $record['smartcard'];
        $decoderno = $record['decoderno'];
        $cell = $record['cell'];
        $date= $record['date'];
     #create word document starts here
    $str ="<tr><td>$firstname</td><td >$refno</td><td >$smartcard</td><td>$decoderno</td>
    <td>$cell</td><td >$date</td><td >..</td>
    </tr>";
    fwrite($fp, $str);  
     }
      $str = "</table>";
     fwrite($fp, $str);
     fclose($fp); 
$str=“订户姓名订户账号s卡号解码器号。
联系人NoDate安装激活日期
";
fwrite($fp,$str);
而($record=mysql\u fetch\u array($result)){
$firstname=$record['firstname'];
$refno=$record['refno'];
$smartcard=$record['smartcard'];
$decoderno=$record['decoderno'];
$cell=$record['cell'];
$date=$record['date'];
#创建word文档从这里开始
$str=“$firstname$refno$smartcard$decoderno”
$cell$date。。
";
fwrite($fp,$str);
}
$str=”“;
fwrite($fp,$str);
fclose($fp);

在代码中,您可以在while循环中创建表格和表格标题,以便重复。。您必须将表和表标题的代码放在while循环之外。请尝试下面给出的代码

  $str = "<table border=\"1\"><tr><td><b>Subscriber's Name</b></td><td>  <b>     Subscriber's Account No.</b></td> <td><b>S-Card No.</b></td><td><b>Decoder No.</b></td>
<td><b>Contact No</b></td><td><b>Date Installed</b></td><td><b>Activation Date</b></td>
</tr>";

 while($record = mysql_fetch_array($result)){
        $firstname = $record['firstname'];
        $refno = $record['refno'];
        $smartcard = $record['smartcard'];
        $decoderno = $record['decoderno'];
        $cell = $record['cell'];
        $date= $record['date'];

        #create word document starts here
        $str .=  "<tr><td>$firstname</td><td >$refno</td><td >$smartcard</td>  
        <td>$decoderno</td><td>$cell</td><td >$date</td><td >..</td></tr>";

     }
    $str .= "</table>";
    fwrite($fp, $str);  
$str=“订户姓名订户账号s卡号解码器号。
联系人NoDate安装激活日期
";
而($record=mysql\u fetch\u array($result)){
$firstname=$record['firstname'];
$refno=$record['refno'];
$smartcard=$record['smartcard'];
$decoderno=$record['decoderno'];
$cell=$record['cell'];
$date=$record['date'];
#创建word文档从这里开始
$str.=“$firstname$refno$智能卡
$decoderno$cell$date.”;
}
$str=”;
fwrite($fp,$str);

谢谢

请不要在新代码中使用mysql_*函数。它们不再被维护,并被正式弃用。学习准备好的语句,并使用PDO或MySQlith以上更新的代码将解决您的问题。请回复任何澄清
  $str = "<table border=\"1\"><tr><td><b>Subscriber's Name</b></td><td>  <b>     Subscriber's Account No.</b></td> <td><b>S-Card No.</b></td><td><b>Decoder No.</b></td>
<td><b>Contact No</b></td><td><b>Date Installed</b></td><td><b>Activation Date</b></td>
</tr>";

 while($record = mysql_fetch_array($result)){
        $firstname = $record['firstname'];
        $refno = $record['refno'];
        $smartcard = $record['smartcard'];
        $decoderno = $record['decoderno'];
        $cell = $record['cell'];
        $date= $record['date'];

        #create word document starts here
        $str .=  "<tr><td>$firstname</td><td >$refno</td><td >$smartcard</td>  
        <td>$decoderno</td><td>$cell</td><td >$date</td><td >..</td></tr>";

     }
    $str .= "</table>";
    fwrite($fp, $str);