如何使用代码点火器将图像从数据库显示到动态创建的表中?

时间:2014-04-05 07:43:06

标签: php codeigniter codeigniter-2 codeigniter-datamapper

我有一个图像数据库,我上传了所有图片。现在我想在我的视图页面中将我的图像显示为4 * 4表格。这意味着我希望一次分页查看16个图像。但我面临一个问题,我只能查看13个图像,我可以打印4行中的3行,最后一行是开始但没有结束问题是什么? (抱歉我的英语不好)

这是我的观点代码:

    $i = 0;
    $j = 0;
    foreach ($designimages as $designimage){
    if ($j == 0) { ?>
        <tr>
        <?php $j = 1; ?>
    <?php }
    if ($i < 4) { ?>            
        <td> <img id="content2" src="<?php echo base_url($designimage->album_thumb) ;?>" alt="" width="155" height="155" /> </td>
        <?php $i++ ;?>
    <?php   }
    else {
        $j = 0;
        $i = 0;
    ?>
        </tr>
    <?php   } ?>

    <?php } ?>
    </table>
    <?php   
    if(isset($pagination))echo $pagination;
    ?>

1 个答案:

答案 0 :(得分:0)

您可以使用 get_paged_iterated()

而不是 get()

来自Datamapper doc:http://datamapper.wanwizard.eu/pages/getalt.html#get_paged

  

每个调用都在对象上设置以下属性,默认情况下称为$ paged。

     

如果您已经有一个名为paged的字段,则可以使用最后一个参数轻松地将对象更改为其他名称。

     

total_rows:未分页查询中的总行数。

     

total_pages:总页数,基于$ page_size。

     

current_page:当前页面(通常是传入)。

     

current_row:当前页面的第一行。

     

last_row:最后一页的第一行。

     

has_previous:如果为TRUE,则查询中有先前的页面。

     

previous_page:上一页或1,以较大者为准。

     

previous_row:上一页的第一行或0,以较大者为准。

     

has_next:如果为TRUE,则查询中有更多页面。

     

next_page:下一页或total_pages,以较少者为准。

     

next_row:下一页的第一行或最后一行,以较少者为准。

     

page_size:每页的项目数,可能对视图有用。

     

items_on_page:当前页面上的项目数,即$ object-&gt; result_count()。

doc:

中的示例
    // IN THE CONTROLLER
    function archive($page = 1)
    {
        $posts = new Post();
        // show newest first
        $posts->order_by('created', 'DESC');
        // show 10 posts per page
        $posts->get_paged($page, 10);

        // send to view
        $this->load->view('posts/archive', array('posts' => $posts));
    }

    // IN THE VIEW
    foreach($posts as $post)
    {
        // render the post
    }
    if($posts->paged->has_previous)
    {
        ?>
    <a href="<?= site_url('posts/archive/1' ?>">&lt;&lt; First</a>
    <a href="<?= site_url('posts/archive/'.$posts->paged->previous_page) ?>">&lt; Prev</a>
        <?
    }
    if($posts->paged->has_next)
    {
        ?>
    <a href="<?= site_url('posts/archive/'.$posts->paged->next_page ?>">Next &gt;</a>
    <a href="<?= site_url('posts/archive/'.$posts->paged->total_pages) ?>">Last &gt; &gt;</a>
        <?
    }