2012-04-09 6 views
1

Ich habe die folgende Tabelle. Der Header ist da und der Inhalt wird innerhalb einer PHP-Schleife generiert. Es enthält einige Steuern, die ein Benutzer zahlen muss, und eine Steuer kann in Raten bezahlt werden. Zum Beispiel, wenn der Benutzer eine 100 $ Steuer bezahlen muss und er zuerst 25 $ und dann 75 $ zahlt, wird es zwei Zeilen in der Tabelle für diese Steuer geben.Tabelle rowspan Ausgabe

Was ich nicht erreichen kann, ist eine Zeilenspanne zu machen, so dass der Steuername nur einmal angezeigt wird.

Jede Hilfe wird geschätzt.

<table cellpadding="0" cellspacing="0" width="100%" class="sortable"> 
    <thead> 
     <tr>               
      <th width="10%">Tax name</th> 
      <th width="10%">Value</th> 
      <th width="10%">Paid</th> 
      <th width="10%">Rest</th>    
     </tr> 
    </thead> 
    <tbody> 
     <tr>          
      <td>Sign-up tax</td> 
      <td>100$</td> 
      <td>25$</td> 
      <td>75$</td>       
     </tr> 
     <tr>          
      <td>Sign-up tax</td> 
      <td>100$</td> 
      <td>75$</td> 
      <td>0$</td>       
     </tr> 
    </tbody> 
</table> 

Der PHP-Code sieht wie folgt aus:

<?php for ($i = 0; $i < count($tax_details); $i++): ?> 
<tr>          
    <td><?php echo $tax_details[$i]['name']; ?></td> 
    <td><?php echo $tax_details[$i]['value']; ?></td> 
    <td><?php echo $tax_details[$i]['paid']; ?></td> 
    <td><?php echo $tax_details[$i]['rest']; ?></td>       
</tr> 
<?php endfor; ?> 
+0

Können Sie den Code posten, der die Tabelle generiert? Wäre einfacher, eine Antwort zu liefern, die von Ihnen leichter verstanden wird. –

+0

Ich habe den Beitrag Brian aktualisiert. – Psyche

Antwort

1

die HTML mit diesem ersetzen:

<tbody> 
    <tr>          
     <td rowspan="2">Sign-up tax</td> <---add rowspan here 
     <td>100$</td> 
     <td>25$</td> 
     <td>75$</td>       
    </tr> 
    <tr>          
     <td>100$</td>   <---remove second sign-up tax from here 
     <td>75$</td> 
     <td>0$</td>       
    </tr> 
</tbody> 
+0

Ja, das weiß ich. Aber ich möchte es mit PHP erzeugen. – Psyche

+0

Dann müssen Sie zuerst Ihren Datensatz untersuchen und herausfinden, welche Zeilen überspannen müssen. –

0

Ihr Code korrekt aussieht, ich das Problem nicht sehen.

<table border="0" cellpadding="0" cellspacing="0" width="100%" class="sortable"> 
    <thead> 
     <tr>               
      <th width="10%">Tax name</th> 
      <th width="10%">Value</th> 
      <th width="10%">Paid</th> 
      <th width="10%">Rest</th>    
     </tr> 
    </thead> 
<tbody> 
<?php for ($i = 0; $i < count($tax_details); $i++): ?> 
<tr>          
    <td><?php echo $tax_details['name']; ?></td> 
    <td><?php echo $tax_details['value']; ?></td> 
    <td><?php echo $tax_details['paid']; ?></td> 
    <td><?php echo $tax_details['rest']; ?></td>       
</tr> 
<?php endif; ?> 
    </tbody> 
</table> 

Ich verstehe nicht, was Sie fragen.

+0

Ich muss eine rowspan für die erste Spalte tun. – Psyche