kostenloser Webspace werbefrei: lima-city


templateengine-ich kapiers einfach nich :D

lima-cityForumSonstigesSpam und sonstiges Unvergütetes

  1. Autor dieses Themas

    benutzernaemelchen

    Kostenloser Webspace von benutzernaemelchen

    benutzernaemelchen hat kostenlosen Webspace.

    Dies ist der ultimative
    ich-hab-keine-Ahnung-wie-das-mit-der-templateengine-funktioniert thread.


    Eigentlich funktioniet es schon, aber...wie mache ich z.b bei einem Forum den Platzhalter f?r einen Post?

    in prinzip w?rs ja dann %post% (etc.), aber, wie ersetze ich den denn jetzt durch alle Posts, zu dem jeweiligen Thema?


    :confused: ...




    MfG
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. c*********c

    http://de.php.net/manual/de/function.str-replace.php

    :biggrin:
  4. Autor dieses Themas

    benutzernaemelchen

    Kostenloser Webspace von benutzernaemelchen

    benutzernaemelchen hat kostenlosen Webspace.



    compactdisc schrieb:
    http://de.php.net/manual/de/function.str-replace.php

    :biggrin:

    Ja, die Engine hab ich ja schon.
    Aber wie ich einen PHP-teil ersetze, kapier ich nich^^
  5. t****y

    :biggrin:

    Beitrag ge?ndert am 4.07.2006 18:15 von t3remy
  6. Autor dieses Themas

    benutzernaemelchen

    Kostenloser Webspace von benutzernaemelchen

    benutzernaemelchen hat kostenlosen Webspace.



    t3remy schrieb:



    compactdisc schrieb:
    http://de.php.net/manual/de/function.str-replace.php

    :biggrin:

    Ja, die Engine hab ich ja schon.
    Aber wie ich einen PHP-teil ersetze, kapier ich nich^^

    Benutz Tipp-Ex :D

    PS: Ich w?rde mir auch mal den Link von CD angucken

    Beitrag ge?ndert am 4.07.2006 17:54 von t3remy

    Ich wei? wirklich nciht, wie mir das jetzt weiterhelfen soll...O.?
    Ich hab ja eigentlich alles, aber wie mache ich z.b das mit den Posts bei einem Forum?
    Oder den Eintr?gen bei einem GB?
  7. s*n

    Gibts 2 M?glichkeiten die mir jetzt spontan einfallen:

    1. in der Schleife in der die Eintr?ge ausgegeben werden, gibst du diese nicht einfach mit echo/print/etc. aus sondern weist sie einer Variable zu und ersetzt dann %post% (hattest du als beispiel genannt) mit der Variable. z.B.:

    <pseudocode>
    while ( blabla ) {
    $eintraege .= '<tr><td>'.$blabla[1].'</td></tr>';
    }
    $template = str_replace('%post%', $eintraege, $template);
    </pseudocode>

    2. du gibst die eintraege wie gewohnt aus aber verwendest den ausgabe-puffer. z.B.:

    <pseudocode>
    ob_start(); //Ausgabepuffer starten
    while ( blabla ) {
    echo '<tr><td>'.$blabla[1].'</td></tr>';
    }
    $eintraege = ob_get_contents(); //Den Inhalt des Puffers in $eintrage schreiben
    ob_end_clean(); //Ausgabepuffer deaktivieren
    $template = str_replace('%post%', $eintraege, $template);
    </pseudocode>

    MfG
  8. t****y

    Ok nun mal wiede etwas Ernsthaftigkeit meinerseits ;)

    Ich selber mache sowas mit Templates garnicht aber grundlegend wird doch dann %bla% durch $bla ersetzt z.b. oder?
    Und die ganzen Posts machst du doch sicherlich in einer Whileschleife oder nicht?
    Kurze Zwischenfrage: Du machst das aber alles Datenbankbasierend oder?
  9. Autor dieses Themas

    benutzernaemelchen

    Kostenloser Webspace von benutzernaemelchen

    benutzernaemelchen hat kostenlosen Webspace.



    t3remy schrieb:
    Ok nun mal wiede etwas Ernsthaftigkeit meinerseits ;)

    Ich selber mache sowas mit Templates garnicht aber grundlegend wird doch dann %bla% durch $bla ersetzt z.b. oder?
    Und die ganzen Posts machst du doch sicherlich in einer Whileschleife oder nicht?
    Kurze Zwischenfrage: Du machst das aber alles Datenbankbasierend oder?

    Ja.
    Aber ich kann %bla% nunmal nicht durch "<?php ... ?>" ersetzen.
    Das wird dann eben nich geparst.
  10. t****y


    Gibts 2 M?glichkeiten die mir jetzt spontan einfallen:

    1. in der Schleife in der die Eintr?ge ausgegeben werden, gibst du diese nicht einfach mit echo/print/etc. aus sondern weist sie einer Variable zu und ersetzt dann %post% (hattest du als beispiel genannt) mit der Variable. z.B.:

    <pseudocode>
    while ( blabla ) {
    $eintraege .= '<tr><td>'.$blabla[1].'</td></tr>';
    }
    $template = str_replace('%post%', $eintraege, $template);
    </pseudocode>

    2. du gibst die eintraege wie gewohnt aus aber verwendest den ausgabe-puffer. z.B.:

    <pseudocode>
    ob_start(); //Ausgabepuffer starten
    while ( blabla ) {
    echo '<tr><td>'.$blabla[1].'</td></tr>';
    }
    $eintraege = ob_get_contents(); //Den Inhalt des Puffers in $eintrage schreiben
    ob_end_clean(); //Ausgabepuffer deaktivieren
    $template = str_replace('%post%', $eintraege, $template);
    </pseudocode>

    MfG

    Genau das h?tte ich ihm jetzt auch vorgeschlagen. Also ich h?tte es auch so gemacht.
  11. s*n




    t3remy schrieb:
    Ok nun mal wiede etwas Ernsthaftigkeit meinerseits ;)

    Ich selber mache sowas mit Templates garnicht aber grundlegend wird doch dann %bla% durch $bla ersetzt z.b. oder?
    Und die ganzen Posts machst du doch sicherlich in einer Whileschleife oder nicht?
    Kurze Zwischenfrage: Du machst das aber alles Datenbankbasierend oder?

    Ja.
    Aber ich kann %bla% nunmal nicht durch "<?php ... ?>" ersetzen.
    Das wird dann eben nich geparst.


    Ahhaaaaaaaaaa, das meinst du :biggrin:

    ok, das machst du folgenderma?en:

    <?php
    $code_zum_parsen = '<?php echo "hallo benutzernaemelchen"; ?>';
    
    ob_start(); //Ausgabepuffer starten
    
    eval("?>".$code_zum_parsen."<?php ");
    /*
    eval ist eine funktion die inhalte von strings als php parst;
    achtung: das leerzeichen in "<?php " ist wichtig;
    */
    
    $inhalt = ob_get_contents(); //Den Inhalt des Puffers $inhalt zuweisen
    
    ob_end_clean(); //Den Ausgabepuffer beenden
    
    $template = str_replace('%mein_platzhalter%', $inhalt, $template);
    
    ?>


    Hoffe das hilft dir,
    MfG
  12. Autor dieses Themas

    benutzernaemelchen

    Kostenloser Webspace von benutzernaemelchen

    benutzernaemelchen hat kostenlosen Webspace.



    svn schrieb:



    t3remy schrieb:
    Ok nun mal wiede etwas Ernsthaftigkeit meinerseits ;)

    Ich selber mache sowas mit Templates garnicht aber grundlegend wird doch dann %bla% durch $bla ersetzt z.b. oder?
    Und die ganzen Posts machst du doch sicherlich in einer Whileschleife oder nicht?
    Kurze Zwischenfrage: Du machst das aber alles Datenbankbasierend oder?

    Ja.
    Aber ich kann %bla% nunmal nicht durch '<?php ... ?>' ersetzen.
    Das wird dann eben nich geparst.


    Ahhaaaaaaaaaa, das meinst du :biggrin:

    ok, das machst du folgenderma?en:

    <?php
    $code_zum_parsen = '<?php echo 'hallo benutzernaemelchen'; ?>';
    
    ob_start(); //Ausgabepuffer starten
    
    eval('?>'.$code_zum_parsen.'<?php ');
    /*
    eval ist eine funktion die inhalte von strings als php parst;
    achtung: das leerzeichen in '<?php ' ist wichtig;
    */
    
    $inhalt = ob_get_contents(); //Den Inhalt des Puffers $inhalt zuweisen
    
    ob_end_clean(); //Den Ausgabepuffer beenden
    
    $template = str_replace('%mein_platzhalter%', $inhalt, $template);
    
    ?>


    Hoffe das hilft dir,
    MfG

    Geht es wirklich nicht anders?
    Jeder wei? ja, dass eval() nicht gerade das Sicherste ist...
    Ausserdem finde ich den Code, daf?r, dass ich ihn sehr oft einsetzen muss, etwas lang :-/
  13. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!