http://www.21ds.net/forum/47/3987.html
这里资料多多。
下面是另外一个例子。使用了SmartTemplate的循环函数<!-- begin Array名 -->XXXXXX<!-- end Array名> 
他的功能类似foreach(),只要有东西,就一直循环显示 
代码: 
<?php     $links  =  array( 
                   array( 
                       'TITLE' => 'PHP', 
                       'URL'   => 'http://www.php.net/', 
                   ), 
                   array( 
                       'TITLE' => 'Apache', 
                       'URL'   => 'http://www.php.net/', 
                   ), 
                   array( 
                       'TITLE' => 'MySQL', 
                       'URL'   => 'http://www.mysql.com/', 
                   ), 
               );     $template  =  new SmartTemplate('links.html'); 
    $template->assign( 'links', $links ); 
    $template->output(); ?> 
HTML模版 
代码: 
<html> 
<h3> Sample Links </h3> <!-- BEGIN links -->     <a href="{URL}"> {TITLE} </a> <!-- END links --> </html> 
代码: 
<html> 
<h3> Sample Links </h3>     <a href="http://www.php.net/"> PHP </a>     <a href="http://www.apache.org/"> Apache </a>     <a href="http://www.mysql.com/"> MySQL </a> </html> 

解决方案 »

  1.   

    http://www.21ds.net/forum/47/3987.html
    这里,看了好几下了。
    我没明白的是从数据库中取出的变量是怎么进行在摸班进行赋值的?
    比如:
    <?
    include "class/DB.php";
    $q = "Select * From news ";
       $row = $db->getRow($q);
       $userid = $row['id'];
       $username = $row['name']; 
       $usermail = $row['mail'];
       $usertel = $row['tel'];
       $userdizhi = $row['dizhi'];
      echo "$userid $username $usermail $usertel $userdizhi <BR>";
    ?>
    高手,能否用这个做个例子,$userid $username $usermail $usertel $userdizhi这些
    都是从数据库取出的变量。还有SmartTemplate嵌套别的摸班,是怎么嵌套的。
      

  2.   

    还有一点是<!-- begin Array名 -->XXXXXX<!-- end Array名> 
    怎么控制循环的变量行数和竖数。
      

  3.   

    <!-- begin Array名 -->XXXXXX,YYYYY<!-- end Array名> 
    只有Array名中有XXXXXX,YYYYY两个字段就是了,其他不用管!
      

  4.   

    是怎么嵌套的
    function show_news($id) { global $tpl_frame,$tpl_body,$tpl_header,$tpl_frame,$tpl_advertisement,$tpl_book,$tpl_keyword;
    $s_book=new SmartTemplate("$tpl_book");
    $r_book=$s_book->result(); $tpl_adv=new SmartTemplate("$tpl_advertisement");
    $r_adv=$tpl_adv->result();

    $tpl_key=new SmartTemplate("$tpl_keyword");
    $r_adv=$tpl_key->result(); $tpl_key=new SmartTemplate("$tpl_keyword");
    $r_adv=$tpl_key->result(); $s_body=new SmartTemplate("$tpl_body");
    $db_rows=_get_news_data($id);
    $s_body->assign('news_body',$db_rows['introduce);
    $s_body->assign('news_title',$db_rows->title);
    $s_body->assign('news_time',date('Y-m-d',$db_rows->date));
    $s_body->assign('news_from','');
    $s_body->assign('news_nav','');
    $r_body=$s_body->result();
    $page=new SmartTemplate("$tpl_frame");
    $page->assign('include_advertisement_tpl',$r_adv);
    $page->assign('include_book_menu_tpl',$r_book);
    $page->assign('include_keyword_tpl',$r_adv);
    $page->assign('news_main_of_tjzl_com',$r_body); $page->output();}
      

  5.   

    我没明白的是从数据库中取出的变量是怎么进行在摸班进行赋值的?
    比如:
    <?
    include "class/DB.php";
    $q = "Select * From news ";
       $row = $db->getRow($q);
       $userid = $row['id'];
       $username = $row['name']; 
       $usermail = $row['mail'];
       $usertel = $row['tel'];
       $userdizhi = $row['dizhi'];
      echo "$userid $username $usermail $usertel $userdizhi <BR>";
    ?>
    高手,能否用这个做个例子,$userid $username $usermail $usertel $userdizhi这些
    都是从数据库取出的变量。模板
    <!-- BEGIN links --> 
    {id} {name} {mail} {tel} {dizhi} <br> 
    <!-- END links --> 程序
    如果只有一条记录
    $row = $db->getRow();
    $tpl->assign('links', $row);如果有多条记录
    while($row[] = $db->retRow());
    $tpl->assign('links', $row);如果数据库类有getall方法(读取全部查询结果)
    $row = $db->getall();
    $tpl->assign('links', $row);
      

  6.   

    block里,{}之间的是数组的索引。