Rowspan in Tabelle berechnen (Smarty)

Aradiv

Well-known member
ID: 217591
L
20 April 2006
1.683
176
Ich habe folgendes Problem.
Ich möchte in einer Tabelle aufeinanderfolgende Zellen gruppien.

Also als Beispiel:

aus
Spalte 1 | Spalte 2 | Spalte 3 | Spalte 4
Wert 1.1 | Wert 1.2 | Wert 1.3 | Wert 1.4
Wert 1.1 | Wert 1.2 | Wert 2.3 | Wert 1.4
Wert 1.1 | Wert 3.2 | Wert 3.3 | Wert 1.4
Wert 1.1 | Wert 4.2 | Wert 4.3 | Wert 4.4
Wert 1.1 | Wert 5.2 | Wert 5.3 | Wert 5.4

Spalte 1 | Spalte 2 | Spalte 3 | Spalte 4

| Wert 1.2 | Wert 1.3 |
| | Wert 2.3 | Wert 1.4
Wert 1.1 | Wert 3.2 | Wert 3.3 |
| Wert 4.2 | Wert 4.3 | Wert 4.4
| Wert 5.2 | Wert 5.3 | Wert 5.4

Wenn möglich würde ich das gerne lösen ohne das ich im Vorfeld im PHP Bereich Prüfe wie oft sich ein Wert wiederholt, da ich denke das dies ein Problem für die Ausgabe und damit das Template ist.

Also im Prinzip muss ich den rowspan einer Tabellenzelle bestimmen in dem ich einen lookahead mache bis sich der Wert ändert und diese Schritte in Smarty zählen.

Aradiv

PS die Zellen haben eine "Rangfolge"

aus
Spalte 1 | Spalte 2 | Spalte 3 | Spalte 4

Wert 1.1 | Wert 1.2 | Wert 1.3 | Wert 1.4
Wert 1.1 | Wert 2.2 | Wert 2.3 | Wert 1.4
Wert 1.1 | Wert 3.2 | Wert 3.3 | Wert 1.4
Wert 1.1 | Wert 4.2 | Wert 3.3 | Wert 4.4
Wert 5.1 | Wert 5.2 | Wert 3.3 | Wert 4.4
Wert 5.1 | Wert 6.2 | Wert 6.3 | Wert 4.4
Wert 5.1 | Wert 7.2 | Wert 6.3 | Wert 4.4
Wert 7.1 | Wert 8.2 | Wert 6.3 | Wert 4.4
Wert 7.1 | Wert 9.2 | Wert 9.3 | Wert 9.4
Wert 7.1 | Wert 10.2 | Wert 9.3 | Wert 9.4

sollte

Spalte 1 | Spalte 2 | Spalte 3 | Spalte 4
Wert 1.1 | Wert 1.2 | Wert 1.3 | Wert 1.4
| Wert 2.2 | Wert 2.3 |
| Wert 3.2 | Wert 3.3 |
| Wert 4.2 | | Wert 4.4
Wert 5.1 | Wert 5.2 | Wert 3.3 | Wert 4.4
| Wert 6.2 | Wert 6.3 |
| Wert 7.2 | |
Wert 7.1 | Wert 8.2 | Wert 6.3 | Wert 4.4
| Wert 9.2 | Wert 9.3 | Wert 9.4
| Wert 10.2 | |

werden.
 
Zuletzt bearbeitet:
Also im Prinzip muss ich den rowspan einer Tabellenzelle bestimmen in dem ich einen lookahead mache bis sich der Wert ändert und diese Schritte in Smarty zählen.
Klingt doch nicht schlecht :) Woran scheiterts?

Beim zweiten Beispiel verstehe ich
Spalte 1 | Spalte 2 | Spalte 3 | Spalte 4
Wert 1.1 | Wert 1.2 | Wert 1.3 | Wert 1.4
| Wert 2.2 | Wert 2.3 |
| Wert 3.2 | Wert 3.3 |
| Wert 4.2 | | Wert 4.4
Wert 5.1 | Wert 5.2 | Wert 3.3 | Wert 4.4
| Wert 6.2 | Wert 6.3 |
| Wert 7.2 | |
Wert 7.1 | Wert 8.2 | Wert 6.3 | Wert 4.4
| Wert 9.2 | Wert 9.3 | Wert 9.4
| Wert 10.2 | |
nicht. Warum tauchen die nochmal auf, obwohl der Wert drüber derselbe is?
 
Würde hier nicht das SQL-Statement SELECT DISTINCT weiterhelfen ?


SELECT DISCTINCT * FROM tabelle.spalte ?


Oder versteh ich DISTINCT grad falsch ?