изменить и повторить последний запрос в codeigniter - PullRequest
1 голос
/ 12 ноября 2011

Могу ли я получить последний запрос, сделанный с активным классом записи, изменить некоторые его части и повторить этот запрос в codeigniter. Я пытаюсь получить общее количество страниц для моей нумерации страниц. Я не могу напрямую написать свой запрос, потому что он динамически создается во время выполнения внутри некоторых циклов for и выражений if в зависимости от формы, отправляемой на страницу.

Ответы [ 2 ]

0 голосов
/ 13 ноября 2011

Вы выполняете свой запрос дважды из-за общего количества страниц? Если да, отметьте SQL_CALC_FOUND_ROWS и FOUND_ROWS() в SQL.

$this->db->select("SQL_CALC_FOUND_ROwS id",false);
$this->db->any_AR_function(....);
$this->db->limit(...);
$result = $this->db->get();

После этого вы можете назвать это:

$this->db->select("FOUND_ROWS() as count",false);
$count = $this->db->get();

Надеюсь, это то, что вы хотите.

0 голосов
/ 12 ноября 2011

Вы можете получить последний запрос, используя:

$last_query = $this->db->last_query();

Вы можете изменить этот запрос и затем выполнить:

$query = $this->db->query($modified_query);
foreach($query->result() as $row)
{

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...