Author Topic: Template Variablen bearbeiten, abfragen und speichern  (Read 1138 times)

0 Members and 1 Guest are viewing this topic.

Offline fkrauthan

  • Newbie
  • *
  • Posts: 5
Template Variablen bearbeiten, abfragen und speichern
on: Thu, 05. March 2009 - 14:19:30
Hallo,
Ich muss mit vlibTemplate eine Liste realisieren. Nun möchte ich innerhalb des Templates von einem bestimmten Feld den ersten buchstaben prüfen. Sollte dieser nicht in einer Variable gespeichert sein, welche über der loop angelegt werden soll, dann soll er ein bestimmten teil noch ausgeben. Geht sowas überhaupt und wenn ja wie?
MFG,
fkrauthan

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Re: Template Variablen bearbeiten, abfragen und speichern
Reply #1 on: Thu, 05. March 2009 - 14:36:42
Geht sowas überhaupt und wenn ja wie?

Ja, das geht.

Hier ein paar Ansätze:
tmpl_if
Bestimmte Felder aus einem Array (oder Datenbank) vergleichen und in einen LOOP integrieren

Gruß
Claus

PS: Ich weise schon vorsorglich auf die Regeln hin, weil du jetzt deine "Hausaufgaben" machen musst.

Offline fkrauthan

  • Newbie
  • *
  • Posts: 5
Re: Template Variablen bearbeiten, abfragen und speichern
Reply #2 on: Thu, 05. March 2009 - 14:38:03
Ich muss aber aus einem String den 1. Buchstaben innerhalb des Templates rausfiltern.

*Offtopic*Gibt es auch einen IRC Channel für die Template lib?*Offtopic*

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Re: Template Variablen bearbeiten, abfragen und speichern
Reply #3 on: Thu, 05. March 2009 - 14:40:51
*Offtopic*Gibt es auch einen IRC Channel für die Template lib?*Offtopic*
Nein.

Hinweis: Reguläre Ausdrücke oder "substr()" geht im Template nicht. Muss also auf PHP-Seite passieren.

Wie sieht dein Ansatz aus? (Bitte poste deinen PHP Code und dein Template)

Gruß
Claus

Offline fkrauthan

  • Newbie
  • *
  • Posts: 5
Re: Template Variablen bearbeiten, abfragen und speichern
Reply #4 on: Thu, 05. March 2009 - 14:42:53
Achso schade. IN Smarty habe ich diese möglichkeit z.b.. Naja kann ich leider nicht posten. Dann muss ich doch mit dem Workaround arbeiten, welches ich mir entwickelt habe.

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Re: Template Variablen bearbeiten, abfragen und speichern
Reply #5 on: Thu, 05. March 2009 - 15:11:35
Achso schade. IN Smarty habe ich diese möglichkeit z.b..

Smarty ist IMHO auch keine Template Engine mehr, sondern eine eigene Programmiersprache, dann kann man auch direkt PHP in Templates verwenden.

Beispiel für PHP-Code:
Code: [Select]
<?php
(...)
    
$table_data = array();
    while (
$row mysql_fetch_assoc($result))
    { 
        
array_push(
            
$table_data,
            array(
                
name => $row[name],
                
city => $row[city]
            )
        );
    }
(...)
?>

Beispiel für Template:
Code: [Select]
<table border="1" width="70%">
   <caption>MySQL data in a table using FOREACH and ARRAY_PUSH</caption>
   <thead>
      <tr>
        <th>name</th>
        <th>city</th>
      </tr>
   </thead>
   <tbody>
     <?php foreach ($table_data as $td_row): ?>
      <tr>
         <td>
          <?=$td_row[name]?>
          <?php if (admin == $td_row[name]): ?>
              <p>admin</p>
           <?php elseif (ClausVB == $td_row[name]): ?>
              <p>super moderator</p>
           <?php else: ?>
              <p>member</p>
           <?php endif; ?>
         </td>
         <td><?=$td_row[city]?></td>
      </tr>
     <?php endforeach; ?>
   </tbody>
</table>

Dann kannst du im Template alle PHP-Funktionen verwenden, die du möchtest und hast trotzdem HTML von PHP getrennt.

Smarty verwendet für mich den falschen Ansatz, weil ein Template keine oder nur wenig Logik enthalten sollte. Templates sind für das Layout, also HTML und CSS und nicht reguläre Ausdrücke.

Gruß
Claus

Offline fkrauthan

  • Newbie
  • *
  • Posts: 5
Re: Template Variablen bearbeiten, abfragen und speichern
Reply #6 on: Thu, 05. March 2009 - 15:23:41
Kann ich leider dafür nicht verwenden, da es eine auftragsentwicklung ist, wo die Template Engine vorgegeben ist. Naja Smarty hat den vorteil, dass es eine gute caching funktion usw noch hat.

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Re: Template Variablen bearbeiten, abfragen und speichern
Reply #7 on: Thu, 05. March 2009 - 15:50:37
Schon mal "vlibTemplateCache" verwendet?

Sprich ... vLIB hat auch eine Caching-Funktion ... und sowohl Smarty als auch vlibTemplateCache setzen in den oben genannten PHP-Code um. Aber jetzt wird es philosophisch ...

Gruß
Claus

Offline fkrauthan

  • Newbie
  • *
  • Posts: 5
Re: Template Variablen bearbeiten, abfragen und speichern
Reply #8 on: Thu, 05. March 2009 - 16:38:35
Naja Smarty kann halt alles UND hat ne caching funktion. Wobei ich nicht sagen möchte das die Template Lib unbedingt schlechter ist.

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Re: Template Variablen bearbeiten, abfragen und speichern
Reply #9 on: Thu, 05. March 2009 - 17:05:13
Danke!  :)