Ähnliches in PHP wie JSP-DisplayTagLibrary ?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Ähnliches in PHP wie JSP-DisplayTagLibrary ?

    Hallo
    Habe etwas Erfahrung mit JSP und bin nun am PHP lernen. Dazu könnt ihr mir vielleicht noch ein zwei Tipps geben:

    a) Forward
    Beispielsweise habe ich ein Formular mit Eingabefeldern. Nach der Eingabe und Submit schreibe ich etwas in die Datenbank.
    So weit so gut, nach dem Datenbankeintrag möchte ich dem Benutzer seine eingegebenen Daten auf einer anderen (nächsten) PHP Seite anzeigen.
    Gibt es bei PHP so was in der Art des JSP Forward Befehls (Der <jsp:forward>-Tag leitet serverseitig das HttpServletRequest-Objekt mit allen gesetzten Parametern an die neue Zielseite weiter) ?

    b) DisplayTagLibrary
    Bei JSP gibt es Tag Libraries die meist einfach "benutzt" werden können. Ich fand es äusserst mühsam dass tabellarische Darstellungen in HTML TABLE gemurkst (von werden mussten).
    Die open source DisplayTagLibrary hat diesem Problem bei JSP entgegengewirkt. Mit einfachem XML hat die Library dann einfach selbst HTML Tables generiert.
    Gibt es solch eine Art von Tag Libraries auch bei PHP ?
    Als Beispiel hier mal die zwei Varianten dargestellt:

    <display:table id="projektliste" name="${sessionScope.formBean.projekte}" >
    <display:caption>Kundenprojekte</display:caption>
    <display:setProperty name="paging.banner.placement" value="bottom"/>
    <display:column property="kuerzel" title="Kürzel" sortable="true"/>
    <display:column property="beschreibung" sortable="true"/>
    <display:column property="beginn" sortable="true"/>
    <display:column property="ende" sortable="true"/>
    <display:column property="budget" title="Budget (CHF)" sortable="true" total="true"/>
    </display:table>


    <table .....
    <tr .......
    <td nowrap width="12%"><a href="kundeAnzeigen.do?projekte[${status.index}].method:anzeigen"><cut value="${projekt.kuerzel}" /></a></td>
    <td nowrap width="30%"><cut value="${projekt.beschreibung}" /></td>
    <td nowrap width="12%"><cut value="${projekt.beginn}" /></td>
    <td nowrap width="12%"><cut value="${projekt.ende}" /></td>
    <td nowrap width="12%" align="right"><cut value="${projekt.budget}" /></td>
    <td nowrap width="12%" align="center"><cut value="${projekt.fortschritt}" /></td>

    .../tr>
    .../table>


    Vielleicht kann mir da jemand kurz einen Tipp geben.
    Vielen Dank

  • #2
    a) speichere die POST daten in einer session, weiterleiten kannst du mit header

    b) um das wie in deinem besipiel umzusetzen, solltest du templates verwenden. ich könnte mir vorstellen, dass smarty dem in etwa entspricht, was dir vorschwebt. die tags definierst du allerdings über variablen selber.
    Kissolino.com

    Kommentar


    • #3
      Hallo Wurzel
      Vielen Dank für die Antwort. Das mit dem "smarty" schaue ich mir heute abend mal an.
      Das mit dem "header" ist ja ähnlich wie mit dem Forward. Nun lese ich aber schon studenweise allerlei Seiten bezüglich dieses "header". Habe jetzt nähmlich das vielzitierte "Warning: Cannot modify header information" Problem.
      Natürlich habe ich auch den berühmten Eintrag
      http://www.php-resource.de/forum/sho...threadid=62965
      diesbezüglich gelesen.
      Nun muss ich halt doch eine so einfache, simple, peinliche Anfängerfrage stellen:
      Wie in aller Welt bringe ich dann meine Seite dazu dass ich folgendes Geschmäuse nicht benötige:
      <html>
      <head>
      <title>irgendwas</title>
      </head>
      <body>

      Diese 5 Zeilen sind das Problem!
      Also nicht benötige ist falsch ausgedrückt. Ich möchte ja schon einen Seitentitel haben. Vermutlich denke ich viel zu kompliziert.....

      Kommentar


      • #4
        Original geschrieben von phpjsp
        Vermutlich denke ich viel zu kompliziert.....
        tust du
        PHP-Code:
        <?php
        $start
        ='<html>
        <head>
        <title>irgendwas</title>
        </head>
        <body>'
        ;
        session_start();
        $mitte tuwas();
        $ende tuwasanderes();

        echo 
        $start;
        echo 
        $mitte;
        echo 
        $ende;
        ?>
        Kissolino.com

        Kommentar

        Lädt...
        X