- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
function resetIsetSorting()
{
$db = 'i_set';
$co = -1;
$q = $this->db->get($db);
$r = $q->result();
foreach($r as $row)
{
$co++;
$upd['sort'] = $co;
$this->db->where('id_set', $row->id_set);
$this->db->update($db, $upd);
}
}
function isetSortExchange($sort, $canBeSort)
{
$db = 'i_set';
$bigNumber = 1470000;
$this->db->where('sort', $canBeSort);
$q = $this->db->get($db);
if ($q->num_rows() == 1)
{
$upd['sort'] = $bigNumber;
$this->db->where('sort', $canBeSort);
$this->db->update($db, $upd);
//
$upd['sort'] = $canBeSort;
$this->db->where('sort', $sort);
$this->db->update($db, $upd);
//
$upd['sort'] = $sort;
$this->db->where('sort', $bigNumber);
$this->db->update($db, $upd);
}
}
Первая функция призвана обновить поле sort на уникальные последовательные значение. Сначала хотел провернуть такое дело на SQL в PHPmyADMIN, но мозгов моих оказалось мало, и я сделал это на CodeIgniter. Говнокод ли это?
Вторая функция призвана для обмена значениями полей sort. Это нужно для сортировки чего либо в баз. Чутьё мне подсказывает что это можно проделать каким-то белее правильным путём, без использования $bigNumber = 1470000; (а вдруг количество строк достигнет этого числа??!!). Говнокод ли это?
Всё рабочее, только что проверил. Свежий код, только что написан!
Uhehesh 08.09.2011 21:29 # +5
jokz 08.09.2011 23:26 # −1
0rt 09.09.2011 01:19 # 0
Lure Of Chaos 09.09.2011 09:42 # +3