Andre: phpLib und variablen

Hallo,

ich benutze das "Template-System" von phpLib ... für eine bestimmte Seite möchte ich abhängig von dem Wert der in der Datenbank steht (bzw. der aus der DB abgefragt wird) unterschiedliche Ausgaben machen. Wie das Grundsätztlich funktioniert ist mir relativ klar, nur finde ich keine Möglichkeit auf die per "set_var()" festgelegten Variablen zuzugreifen.

Folgendes habe ich bereits ausprobiert, leider funktioniert es nicht wie gewünscht...

  
      $a = "<a href=\"";  
      $e = "\" target=\"_blank\">Hersteller</a>";  
  
      if (! $tpl->subst("p_url") == "") {  
         $v = $tpl->subst("p_url");  
         $p_url = $a.$v.$e;  
         $tpl-> set_var ( array (  
           "p_url" => $p_url ) );  
      }  

Einmal ganz abgesehen, von der vielleicht unsauberen Programmierung, funktioniert dieses Konstrukt auch nur, wenn etwas in der Variablen drinn steht. Andern Falls gibt es einen Fehler (von phpLib) was ich nicht ganz verstehe, weil in diesem Fall einfach nichts ausgeführt wird - und ohne oben angegebenen Code funktioniert es einwandfrei.

Ich hoffe jemand von euch hat einen guten Tipp bzw. eine gute Quelle zum nachlesen für mich.

Grüße, Andre

  1. Hallo,

    ich habe mir meine Frage gerade doch selbst beantworten können...

    Folgende URL war mir dabei sehr hilfreich:
    http://www.sanisoft.com/phplib/manual/templateMethods.php

    Im unten genannten Code habe ich die Function subst() gegen get_vars ausgetauscht - jetzt funktioniert alle wunderbar. :-)

    Wenn ich es richtig verstanden habe, ist die Funktion subst() noch nicht fertigt geschrieben. Vielleicht kann jemand besser english, der möge mich dann gerne verbessern.

    Grüße, Andre

    $a = "<a href="";
          $e = "" target="_blank">Hersteller</a>";

    if (! $tpl->subst("p_url") == "") {
             $v = $tpl->subst("p_url");
             $p_url = $a.$v.$e;
             $tpl-> set_var ( array (
               "p_url" => $p_url ) );
          }

      
    ... die beschriebene Konstruktion gefällt mir allerdings immer noch nicht. Ich muss auf diese Weise 3 Variablen prüfen und verändern. Wenn jemand eine gute Idee für mich hat, nur her damit.  
      
      
    Grüße, Andre