PHP HTML-Tabellen via Class erstellen lassen

M3Y3R

Well-known member
ID: 336361
L
8 Mai 2006
1.608
60
Hallo,

ich möchte mir eine dynamische HTML-Tabelle über Klassen erstellen lassen.
Folgendes ist dabei zu beachten:
:arrow: Stylesheet angaben für die Tabelle selbst, jede Zeile/jede Zelle sollen optional hinzugefügt werden können.
:arrow: Die Anzahl an Spalten und Zeilen ist Variabel

Nun habe ich mir überlegt, dass entweder jede Tabelle, jede Spalte oder jede Zelle ein Objekt sein kann. Doch was ist nun das Sinnvollste der drei Varianten?

Ich greife auch gerne auf bereits existierende Klassen zurück. Vielleicht habt ihr irgendwas in Petto für mich?

Hintergrund ist der, dass ich diese Tabelle mit Hilfe von TCPdf in einem PDF ausgeben möchte...


MFG
Papenburger
 
Was möchtest du in den Tabellen denn darstellen? Die Frage deshalb, weil ich mir das ganze noch nicht so richtig vorstellen kann. Im ersten Moment habe ich an ein normales Grid-Control gedacht, aber das meinst du sicher nicht.

stumpi
 
Nun habe ich mir überlegt, dass entweder jede Tabelle, jede Spalte oder jede Zelle ein Objekt sein kann. Doch was ist nun das Sinnvollste der drei Varianten?
Alle drei zusammen? :ugly:
Dich hindert nix drin, eine Tabelle als Menge von Spalten zu modellieren, die wiederum eine Menge von Zellen darstellt.
Effektiv is eine Tabelle nur ein zweidimensionales Array.

Du musst bei HTML-Tabellen nur aufpassen, weil es colspan/rowspan gibt, die diese Modellierung leider kaputt macht bzw. erschwert.
 
Was möchtest du in den Tabellen denn darstellen?

Ganzb einfache normale Textbausteine bzw. Sätze welche auch mal länger sein können...

Alle drei zusammen? :ugly:
Dich hindert nix drin, eine Tabelle als Menge von Spalten zu modellieren, die wiederum eine Menge von Zellen darstellt.
Effektiv is eine Tabelle nur ein zweidimensionales Array.

In diesem Konkreten Beispiel habe ich nur ein Eindimensionales Array...
Also eine Zweispaltige Tabelle ;-)

Du musst bei HTML-Tabellen nur aufpassen, weil es colspan/rowspan gibt, die diese Modellierung leider kaputt macht bzw. erschwert.

Das ist eines meiner Probleme. Dies sollte schon berücksichtigt werden indem ich addAttribute() oder sowas aufrufe und dann die Zellen zusammengefügt werden...

Gibt es irgendwo schon etwas fertiges, was flexibel genug ist um die Zellen einzelnd zu stylen und einfach in der Handhabung ist?
 
In diesem Konkreten Beispiel habe ich nur ein Eindimensionales Array...
Also eine Zweispaltige Tabelle ;-)
Ein eindimensionales Array ist aber nur eine einspaltige Tabelle ;)

Du kannst natürlich auch alle Zellen (egal, wie viele Spalten) in ein eindimensionales Array schreiben, indem du alles hintereinander schreibst. Wird halt nur "unübersichtlicher".
 
Wenn du tabellarische Daten hast, dann solltest du gleich eine Tabelle verwenden. Dafür wurde sie entwickelt...

Ein weiteres Problem das du haben könntest, könnte in deinem gewählten PDF-Konverter liegen. Der muss CSS auch sinnvoll verstehen. Ich hatte mal einen verwendet, der hat nicht mal float gecheckt. Das solltest du vorher klären, bevor du irgendwas umsetzt.
 
Ein eindimensionales Array ist aber nur eine einspaltige Tabelle ;)

Du kannst natürlich auch alle Zellen (egal, wie viele Spalten) in ein eindimensionales Array schreiben, indem du alles hintereinander schreibst. Wird halt nur "unübersichtlicher".

Da hast du recht, es wird unübersichtlich.

Ich habe mal einen Tag investiert und eine "Framework" für Tabellen geschrieben. Aufgebaut ist es so, dass jede Zelle, jede Zeile und jede Tabelle jweils ein Objekt bzw. untergeordnetes Objekt ist. Für jedes Objekt, also auch jede Zelle, kann man dann unterschiedliche Style-Anweisungen vergeben ;)


Wenn du tabellarische Daten hast, dann solltest du gleich eine Tabelle verwenden. Dafür wurde sie entwickelt...

Ein weiteres Problem das du haben könntest, könnte in deinem gewählten PDF-Konverter liegen. Der muss CSS auch sinnvoll verstehen. Ich hatte mal einen verwendet, der hat nicht mal float gecheckt. Das solltest du vorher klären, bevor du irgendwas umsetzt.

Ich glaube du hast meine Anforderung nicht ganz verstanden...
Hier ging es darum, eine Klasse zu erstellen, welche durch die übermittelten Daten die Tabelle selbstständig zusammen baut.