Anzeige:
Ergebnis 1 bis 6 von 6

Thema: Trennung von HTML-Ausgabe und Logik

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registrierter Benutzer
    Registriert seit
    02.09.2004
    Ort
    Mannheim
    Beiträge
    102

    Trennung von HTML-Ausgabe und Logik

    Ich habe einige fertige PHP Pakete auf meinem Server installiert und seit kurzem auch ein eigenes Projekt, welches ich "von Scratch" selbst programmiert habe (http://turnierkalender.net-hitec.de).

    Mir fällt auf, dass Programme sehr schnell sehr unleserlich werden und auch vom Programmierprinzip "Trennung Logik von Ausgabe" sehr unsauber sind.
    Diese ständige Mixtur von "echo <HTML-Code....>" und Logik (Ermittlung des nächsten Strings, der als Content in die HTML-Struktur eingestreut wird) macht mich nicht happy.

    Gerade wenn man in Tabellen arbeitet, hängt die Programmlogik sehr fest mit der Ausgabeformatierung zusammen. Änderungen führen schnell zu inkorrektem HTML-Code.

    Meine Frage:
    Gibt es
    a) Programmiertechniken
    b) Tools, die von einer abstrakteren Warte aus PHP erzeugen (Development Time)
    c) Middleware, die aus PHP genutzt genutzt werden kann (Run Time)

    Oder stellt das für den erfahrenen Programmierer kein Problem dar? Was mein ihr, wie löst ihr das Thema?

    Danke und Grüße
    Thomas

  2. #2
    Registrierter Benutzer Avatar von Gaert
    Registriert seit
    09.05.2002
    Ort
    Nußloch
    Beiträge
    1.317
    Hallo,

    das Stichwort heißt Template!

    Schau dir z.B. mal http://smarty.php.net an.

    Gruß,

    Gaert


  3. #3
    Registrierter Benutzer Avatar von elrond
    Registriert seit
    03.10.2001
    Ort
    potsdam
    Beiträge
    881
    ich benutze seit Jahren fastTemplate und bin sehr zufrieden damit.

    Ich hab's irgendwann ein wenig erweitert, um auch die Templates in einer DB haten zu können....
    "Um die Welt zu ruinieren, genügt es, wenn jeder seine Pflicht tut." (Winston Churchill)

  4. #4
    Registrierter Benutzer
    Registriert seit
    02.09.2004
    Ort
    Mannheim
    Beiträge
    102

    Templates...

    Danke für eure Tipps.
    Ich habe da mal reingeschaut und verstehe jetzt grob die Arbeitsweise. In jedem Fall sieht das schon ziemlich sauber getrennt aus - klasse Tipp !

    Mein PHP-Programm enthält also statt der "echo..." Befehle nur noch calls zum Smarty-Template (Werte setzen, Seite (immer ganze Page?) darstellen).

    So ganz kann ich mir noch nicht vorstellen, wie praktikabel das in der Praxis ist und wie schwierig es ist, die Templates mit den Variablen zu erstellen. Besonders, wenn der Inhalt etwas komplexer ist, also z.B. die Monatsansicht eines Kalenders, bei dem Farben und Tabellenformate von den Wochentagen abhängen (also die Darstellung variabel an der Programmlogik / dem Inhalt hängt).

    Ich geh mal davon aus, dass man solche Aufgaben (ist ja nichts Besonderes) damit abwickeln kann. Muss es einfach mal probieren.

    Bis denne.
    Grüße
    Thomas

  5. #5
    Registrierter Benutzer Avatar von elrond
    Registriert seit
    03.10.2001
    Ort
    potsdam
    Beiträge
    881
    bei mir sieht's im Code dann irgendwie so aus:

    Code:
    	$tpl->assign(array(
    					"{LETTERTABLE}"	=> getlettertable($anteilid),							
    					"{LTEILN}"		=> $lteiln,
    					"{POSTWEG}"		=> $obj_anteil->postweg,
    					"{RELOADURL}"	=> $PHP_SELF."?action=anteil&opt=01&pagenr=".$pagenr."&anteilid=".$anteilid."&pagenr=$pagenr",
    					"{PAGENAME}"	=> $PHP_SELF
    				 ));
    	$tpl->parse("MAIN","anteil_main_page4");
    
    
           $tpl->FastPrint();
    mit ein wenig zeugs drunherum...

    PS: Jubiäum: mein 555.
    "Um die Welt zu ruinieren, genügt es, wenn jeder seine Pflicht tut." (Winston Churchill)

  6. #6
    Registrierter Benutzer Avatar von BlueJay
    Registriert seit
    27.08.2004
    Beiträge
    825

    Trennung Code/Ausgabe

    Zitat Zitat von tschloss
    So ganz kann ich mir noch nicht vorstellen, wie praktikabel das in der Praxis ist und wie schwierig es ist, die Templates mit den Variablen zu erstellen. Besonders, wenn der Inhalt etwas komplexer ist, also z.B. die Monatsansicht eines Kalenders
    Ich habe bisher mein eigenes Template-Süppchen gekocht, aber nach bekanntem Strickmuster.
    Und so kan man kompliziertere Sachen wie formatierte Tabellen variabler Länge erst mal in einer Variablen sammeln, die man dann ins Template einsetzt.

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •