Codeigniter-模型中的最后一行

时间:2018-07-31 21:31:55

标签: php codeigniter model codeigniter-3

我有3个包裹,例如银,金,白金。我必须在“程序包视图”中显示这些程序包的最后一行。我为此创建了任何“模型”页面,但是此代码仅显示表格中最后一项的最后一行。例如,我有3个包裹,它仅显示一个包裹的最后一个包裹。不显示其他包,例如金和银。我想与其他软件包一起显示最后编辑的软件包。如果我编辑任何程序包,我想显示上次编辑的程序包的最后一行与其他程序包。我该怎么办?

我的模型代码:

public function packages()

    {

        $this->db->select('

        package.*, packageService.*

        ');

        $this->db->from('packageService');

        $this->db->join('package', ' package.packageService = packageService.packageServiceId');

        $this->db->limit(1);

        $this->db->order_by('packageId',"DESC");

        $query = $this->db->get();

        $results = $query->result();

        return $results;

    }

我的包裹视图:

<section id="main-content">
    <section class="wrapper site-min-height">
        <!-- page start-->
        <div class="row">
            <!--price start-->
            <div class="text-center feature-head">
                <h1> PACKAGES </h1>
                <p>Choose Your Special Package Plan. </p>
            </div>
            <?php foreach($packs as $get) { ?>
                <div class="col-lg-3 col-sm-3">
                    <div class="pricing-table <?php if ($get->packageNameEn == 'Platinum') { echo 'most-popular'; } ?>">
                        <div class="pricing-head">
                            <h1> <?php echo $get->packageNameEn; ?> </h1>
                            <h5><del>€ <?php echo $get->packagePrice ?></del></h5>
                            <h2><span class="note">€</span> <?php echo $get->packagePriceCut ?> </h2>

                        </div>
                        <ul class="list-unstyled">
                            <?php echo $get->packageServiceNameEn ?>
                        </ul>
                        <div class="price-actions">
                            <a class="btn" href="javascript:;">Get Now</a>
                            <a class="btn" href="<?php echo base_url("package/edit/$get->packageId"); ?>">Edit</a>
                        </div>
                    </div>
                </div>
            <?php } ?>
        </div>
        <!-- page end-->
    </section>
</section>
<!--main content end-->

1 个答案:

答案 0 :(得分:1)

我建议将packageRev更改为packageParent,默认值为0。在此字段中,我们保留对原始包装ID的引用。 然后在您的模型中

$this->db->select_max('packageId', 'MaxPackageId'); 
$this->db->select('IF(packageParent = 0 , packageId, packageParent) as parent', FALSE); 
$this->db->from('package'); 
$this->db->group_by('parent'); 

$subquery = $this->db->get_compiled_select(); 
$this->db->reset_query();
$this->db->select('package.*, packageService.*'); 
$this->db->from('package'); 
$this->db->join("($subquery) t1","t1.MaxPackageId = package.packageId"); 
$this->db->join('packageService', 'package.packageId = packageService.packageServiceId', 'LEFT');
$query = $this->db->get(); 

还需要根据此更新控制器