А как насчет использования следующего SQL-запроса:
update shop_items
set amount = amount + 1
where itemid = 123
В основном, только в одном запросе SQL вы устанавливаете amount
в предыдущее значение, которое он имел, плюс один.
Нет необходимости в двух запросах; -)
Интеграция этого в ваш PHP-код должна дать вам что-то похожее на это:
if (!$this->db->query('UPDATE shop_items SET amount=amount+1 WHERE itemid='.$itemid.'')) :
return false;
endif;
Примечание: я просто заменил ваш _current_value_
на имя поля, над которым вы работаете: amount
.