Tom: Funktion zur Darstellung von SQL-Abfrageergebniss

Beitrag lesen

Hello,

Habe mir (vorerst nur just4fun) eine kleine Funktion gebastelt.
Dieser übergebe ich ein beliebiges SQL-Select-Statement. Als Rückgabewert erhalte ich einen String. Dieser beinhaltet eine komplette html-table samt Inhalt schön formatiert mit Columnheader etc. Den String kann ich dann wo auch immer einfach mit echo ausgeben. Kurz gesagt übergebe ich der Funktion ein SQL-Statement und erhalte eine fertig html-table samt Inhalt.

Soweit so gut. Genauer betrachtet denke ich aber, dass ich spätestens dann ein Problem bekomme wenn der zurückgegebene String zu gross wird. Nur wie löst man soetwas mit php korrekt?

Diese Philosophiefrage bezieht sich ganz bestimmt nicht nur auf PHP.
Wie löst man das, was Du da gemacht hast generell? Es gibt unterschiedliche Ansätze.
Einer davon wäre, die Trennung von Steuerung, Datenhaltung und Datendarstellung
http://de.wikipedia.org/wiki/Model_View_Controller

In der Wirklichkeit lässt sich das aber nur schwer umsetzen und einhalten.

Allerdings stellt ein Browser als Benutzerschnittstelle schon eine ziemlich gute Abgrenzung des View (Präsentations-Modul) zur Verfügung, wenn man nicht wieder innerhalb dieses Moduls mit JavaScript oder AJAX anfängt.

Du solltest also als Rückgabewert deiner Abfragefunktion erstmal nur Daten erhalten. Diese sollten strukturiert vorliegen, also z.B. als Array. Wenn die Menge zu groß wird, könnte man diese durch einen zusätzlichen Eingangs- und einen Ausgangsparameter begrenzen, also limitieren und zurückmelden, wieviele Teilergebnisse die Menge enthält und ob noch mehr da sind.

Die Daten gehen dann an die Präsentation, die die tabelle und Steuerelemente daraus macht. Die Steuerung muss auf eine eventuelle Rückmeldung "nächste Seite" reagieren können.

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
 ☻_
/▌
/ \ Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de