发新话题
打印

SMARTY二位数组循环问题

SMARTY二位数组循环问题

数据库运行结果:            我把他写成数组的形式也是不行的(    mysql_fetch_array    )
引用:
Array(    [0] => stdClass Object        (            [id] => 1            [data] => 2008-01-07            [morning] => 3            [afternoon] => 10            [supper] => 7            [traffic] => 6            [countall] => 26            [remarks] =>             [place] => Shanghai        )    [1] => stdClass Object        (            [id] => 2            [data] => 2008-01-08            [morning] => 3            [afternoon] => 14            [supper] => 5            [traffic] => 4            [countall] => 26            [remarks] =>             [place] => Shanghai        )    [2] => stdClass Object        (            [id] => 3            [data] => 2008-01-09            [morning] => 3            [afternoon] => 17            [supper] => 95            [traffic] => 4            [countall] => 119            [remarks] => 晚上去唱歌50+喝酒30+打车15            [place] => Shanghai        )    [3] => stdClass Object        (            [id] => 4            [data] => 2008-01-10            [morning] => 3            [afternoon] => 10            [supper] => 13            [traffic] => 4            [countall] => 30            [remarks] => 牙刷3.5 + 牙膏2.9 + 矿泉水1.5 + 晚饭5.0            [place] => Shanghai        )    [4] => stdClass Object        (            [id] => 5            [data] => 2008-01-11            [morning] => 2            [afternoon] => 5            [supper] => 204            [traffic] => 6            [countall] => 217            [remarks] => 借钱程50 + 垫付耳机85 + 晚饭64 + 5            [place] => Shanghai        ))
SMARTY错误提示:
Fatal error:  Cannot use object of type stdClass as array in D:\www\MyWeb\templates_c\%%56^56A^56AF583D%%moneylist.html.php on line 55

这是SMARTY模板
引用:
  <{section name=loop loop=$moneybag}>
  <{section name=loop2 loop=$moneybag[loop].id}>
  <tr>
    <td><{$moneybag[loop].id[loop2].id}></td>
    <td><{$moneybag[loop].id[loop2].data}></td>
    <td><{$moneybag[loop].id[loop2].morning}>元</td>
    <td><{$moneybag[loop].id[loop2].afternoon}>元</td>
    <td><{$moneybag[loop].id[loop2].supper}>元</td>
    <td><{$moneybag[loop].id[loop2].traffic}>元</td>
    <td><{$moneybag[loop].id[loop2].countall}>元</td>
    <td><{$moneybag[loop].id[loop2].place}></td>
    <td><{$moneybag[loop].id[loop2].remarks|truncate:12}></td>
    <td><img src="<{$IMAGE_PATH}>view.gif"> <img src="<{$IMAGE_PATH}>edit.gif"> <img src="<{$IMAGE_PATH}>delete.gif"></td>
  </tr>
  <{/section}>
  <{/section}>
这是SMARTY显示
引用:
        $moneybag = $ConsumeMgr->findConsume($temp);
        print_r($moneybag);
        $tpl->assign(array("moneybag"=>$moneybag));[/code]其他类   //这里就是上面的MONEYBAG[code]    function findConsume($filter, $pagination = '')
    {
        $sql = "select * from ".$this->tblname;
        if("" != $filter[data])
        {
            //$sql .=" data like ".$filter[data]."%";
        }
        $res = $this->findObjectsBySql($sql);
        return $res;
    }
这是MYSQL
引用:
    /************************************
     * return all objects queried by sql string
     ***********************************/
    function findObjectsBySql($sqlStr)
    {        
        $res = $this->query($sqlStr);
        $objs = array();
        while ($obj = $this->fetch_object($res))
            $objs[] = $obj;
        return $objs;
    }   

   
    /*========================================================================*/
    // Fetch an object based on the last query
    /*========================================================================*/
    function fetch_object($query_id = "")
    {
        if ($query_id == "")
        {
            $query_id = $this->query_id;
        }
        return mysql_fetch_object($query_id);   
    }
请高手指点!!!
谢谢~
EMAIL:qsbaq@163.com

[ 本帖最后由 networker 于 2008-1-12 13:41 编辑 ]

TOP

初学,看看

TOP

发新话题