phpbar.de logo

Mailinglisten-Archive

[php] PHPLIB und templates

[php] PHPLIB und templates

Frank Schnaue php_(at)_phpcenter.de
Wed, 12 Sep 2001 11:17:28 +0200 (MEST)


Hallo Rainer,
> hallo frank,
> 
> > das erste feld habe ich komplett mit templates
> > umgesetzt.({first_select})
> > Das zweite muß mit dynamischen Blöcken umgesetzt werden, da dieser Teil
> > in der html - Datei nicht zu Anfang sichtbar sein darf.
> 
> ich habe die fragestellung glaube ich nicht so ganz verstanden, aber ich
> probiere es mal (ohne das script gelesen zu haben, sorry, aber zeit ist
> etwas knapp)
> 
> kannst du das parsen nicht in einer if oder switch-bedingung abfragen, so
> in
> der art von
> 
> if(blabla) $tpl-> set_var ("second_select", $option_block);

Das Feld soll jedoch in einer neuen table row dargestellt werden, die
komplett unsichtbar ist. 
In diesem Zusammenhang stellt sich für mich die Frage der dynamischen
Blöcke.
Vieleicht hat ja doch jemand Zeit und Lust, die beiden Dateien mal
durchzusehen, ich hänge sie nachfolgend noch mal dran.
> 
> vielleicht kannst du ja so verfahren.
> 
> gruß
> rainer
------------------first.html----------------------------------------
        <TITLE>{seitentitel}</TITLE>
</head>
<body topmargin="0" leftmargin="0" marginwidth="0" marginheight="0"
bgcolor="#FFFFFF">
<table width="770" border="0" cellspacing="0" cellpadding="0">
   <tr>
     <td width="267" height="8"></td>
     <td colspan="3" width="503" height="8"></td>
   </tr>
   <tr>
     <td width="267" height="56"><img src="./images/Logo.gif"
width="267" height="56" align="right"></td>
     <td colspan="3" valign="bottom" align="right" width="503"
class="txt">
     </td>
   </tr>
   <tr>
     <td align="right" height="24"><img src="./images/Nav1-left.gif"
width="267" height="24" border="0"></td>
     <td colspan="3" height="24" width="503" align="left" valign="top">

        <form action="index.php" method="post" target="">

              {first_select}
     </td>
        </form>
   </tr>
   <!-- BEGIN table_template -->

   <tr><td colspan="4" height="3"></td></tr>
<tr>
   <form action="concerts.php3" method="post" target="main">
         <td width="267" height="24">&nbsp;</td>
         <td colspan="2" align="right"><img src="images/Nav2-left.gif"
width="206" height="24" border="0"></td>
         <td align="left" width="297" height="24" valign="top">

         {second_select}

         </td>
   </form>
</tr>

   <!-- END table_template -->

   </table>
</body>
----------------------ENDE DER
HTML
-DATEI--------------------------------


-------------------------------index.php-------------------------------------------

<?
    require("db_mysql.inc.php"); // DB_SQL
    require("local.inc.php");   // DB_WAHL
    include ("template.inc.php"); // phplib-template einbinden
    $db = new DB_WAHL;
    $tpl = new Template();
//----------------erstes Auswahlfeld
Beginn-----------------------------//
    $tpl-> set_file (array(
                       "feld" => "first.html"));
    $tpl-> set_var ("seitentitel","Live-music-database from Frank
Schnaue");
    $tpl-> set_block('feld','table_template','table_tab');

        $query = "SELECT auswahl_id,auswahl_01 FROM auswahl";
        $query .= " ORDER BY auswahl_id;";
        $db->query($query);
        $option_block  = "<select name=\"SEL_FELD\" value=\"$SEL_FELD\"
size=\"1\" style='width:160px;'  width='160' onChange='submit()'>";
        $option_block  .= "<option value=\"nothing\">Please select ...
</option>";
        $option_block .= "<option
value=\"nothing\">-------------------------</option>";
        // mit einer Schleife die select-box aus der Datenbank füllen
    while ($db->next_record()){
        //aktueller Wert der Spalte 'auswahl_id'
        $wert = $db->f('auswahl_id');
        //aktueller Wert der Spalte 'auswahl_01'
        $wert_01 = $db->f('auswahl_01');

           if($wert == $SEL_FELD) {
                $option_block .= "<option value=" .$wert." selected
>".$wert_01."</option>";

           }else{
                $option_block .= "<option value="
.$wert.">".$wert_01."</option>";
           }
    }
        $option_block  .= "</select>";
    //$option_block wird "first_select" in html-Datei zugewiesen
    $tpl-> set_var ("first_select", $option_block);


//----------------erstes Auswahlfeld Ende-----------------------------//

        $query1 = "SELECT * FROM auswahl";
        $query1 .= " WHERE auswahl_id LIKE '$SEL_FELD';";
        $db->query($query1);

   if($db->next_record()){
   //wenn der 3. Eintrag ausgewählt wird ...
       if($db->f('auswahl_id')==3){       

        // Doppelte Einträge in der Datenbank finden
           $query2 = "SELECT artist, count(artist) FROM daten";
           $query2 .= " GROUP BY artist ORDER BY artist_index";
           $query2 .= ";";
           // Die SQL-Anweisung ausführen
           $db->query($query2);
                 $option_block1  = "<select name=\"SEL_FELD1\"
value=\"$SEL_FELD1\" size=\"1\" style='width:297px;'
                                                        width='297'
onChange='submit()'>";
                 $option_block1  .= "<option value=\"nothing\">Please
select ... </option>";
                 $option_block1 .= "<option
value=\"nothing\">-------------------------</option>";
           // mit einer Schleife die select-box aus der Datenbank füllen

          while ($db->next_record()){
                 //aktueller Wert der Spalte 'auswahl_id'
                 $wert_02 = $db->f(0);
                 //count der Spalte 'auswahl_id'
                 $wert_03 = $db->f(1);
                if($wert_02 == $SEL_FELD1) {
                   $option_block1 .= "<option value=" .$wert_02."
selected >".$wert_02."</option>";
                }else{
                   $option_block1 .= '<option value="' . $wert_02 .
'">'.$wert_02 .' ('
                     . $wert_03 . ")</option>";
                }
           }
                $option_block1  .= "</select>";

           $tpl-> set_var ("second_select", $option_block1);
           $tpl-> parse ('table_tab','table_template',true);

      }
  }
         $tpl-> parse ("output",array("feld"));
         $tpl-> p ("output"); // ausgabe der html datei

?>
-------------------------------ENDE DER
DATEI--------------------------------


Vielen Dank
Frank

-- 
GMX - Die Kommunikationsplattform im Internet.
http://www.gmx.net



php::bar PHP Wiki   -   Listenarchive