|
|
|
_ответ
1. Можно выкинуть поле all, showed переименовать в remains и хранить там количество показов, уменьшая на единицу после каждого показа. Либо оставить как есть -- это роли не играет.
2. А сократить можно момент апдейта базы: ^sql[update show_pict set i=i+1 where FIND_IN_SET(id, 'список показанных id через запятую')]
3. Наверняка и вытаскивать из базы можно сразу все необходимые картинки. Если их немного, то можно селектить все, а потом парсером выбирать из контекста. Если много, то доставать их ^sql[select ... limit 5], а order by задавать случайным образом, ровно как и desc, или asc :)
|