【问题标题】:Select from 2 tables to generate slug. Active Records - Codeigniter 3从 2 个表中选择以生成 slug。活动记录 - Codeigniter 3
【发布时间】:2016-08-23 18:32:10
【问题描述】:

我有 2 张桌子。第一桌 - 优惠:

| offer_id | slug | user_id |

和表offer_info:

|offer_id | name | info_text |

我想要的是创造独特的蛞蝓。首先,我需要创建具有无限循环的方法,该方法发出请求并从两个表中选择所有行,其中$name 等于offers.slug 或名称等于offers.slug,但offer_id 不等于$offer_id,如果有行,再次循环并检查$name . '-' . 1,如果有,计数器为2等。如果没有结果/行,则中断并返回唯一的slug:

public function create_slug($offer_id, $name){

$count = 1;
while (true){
    // QUERIES

    if($query->num_rows()){
        $name = $name . '-' . $count; //qwerty-1
        $count++;
    } else {
        break;
    }
}

return $name;
}

,但是如何使用 Active Records 发出请求?

【问题讨论】:

  • 实际打算做什么?为什么你需要任何一种蛞蝓?您似乎在描述一个 SELECT 查询还是我遗漏了什么?

标签: php mysql codeigniter activerecord codeigniter-3


【解决方案1】:

您可以使用 codeigniter 的 url_title($str, $separator = '-', $lowercase = FALSE) 方法。它接受一个字符串并将其转换为人类可读的 url。例如

    $title = "What's wrong with CSS?";
    $url_title = url_title($title, 'underscore');
    // Produces: Whats_wrong_with_CSS

您可以访问documentation 了解更多信息。使用该功能前需要使用$this->load->helper('url');。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-16
    • 1970-01-01
    • 2013-01-06
    • 2014-03-24
    • 1970-01-01
    相关资源
    最近更新 更多