Перейти к содержанию
Официальный форум поддержки Simpla

Прибавление числа к номеру заказа


Рекомендуемые сообщения

Добрый день форумчане.

Как-то давно видел на форуме решение о прибавлении заданного числа к номеру товара, но теперь не нахожу(

Пример: Заказ №1, Заказ №2, Заказ №3...

А хочу задать чтобы после каждого заказа, увеличивалось на "3":

Заказ №3, Заказ №6, Заказ №9, Заказ №12...

Ссылка на сообщение
Поделиться на другие сайты

Так сделать невозможно потому как ID заказ генерируется после создания записи в sql.

+ id заказа автоматически генерируется и приплюсовать уж точно не выйдет.

Изменено пользователем Noxter
Ссылка на сообщение
Поделиться на другие сайты

Так сделать невозможно потому как ID заказ генерируется после создания записи в sql.

+ id заказа автоматически генерируется и приплюсовать уж точно не выйдет.

Странно, точно помню было решение на форуме

Ссылка на сообщение
Поделиться на другие сайты

Странно, точно помню было решение на форуме

Прям сама точность :D

Возможно речь шла о изменении порядкового номера заказа.

Ссылка на сообщение
Поделиться на другие сайты

Так сделать невозможно потому как ID заказ генерируется после создания записи в sql.

+ id заказа автоматически генерируется и приплюсовать уж точно не выйдет.

 

Шикарное заявление!

Готов поспорить с заявителем на 100-1000$, что так сделать очень даже возможно. Думаю, что минимум два разных способа смогу предоставить...

Ссылка на сообщение
Поделиться на другие сайты

Шикарное заявление!

Готов поспорить с заявителем на 100-1000$, что так сделать очень даже возможно. Думаю, что минимум два разных способа смогу предоставить...

Ну правильно, на сегодняшний день, все можно сделать)

Ссылка на сообщение
Поделиться на другие сайты

Шикарное заявление!

Готов поспорить с заявителем на 100-1000$, что так сделать очень даже возможно. Думаю, что минимум два разных способа смогу предоставить...

Покажи всем Корс какой ты умный, докажи что кроме паршивого тролинга ты способен сделать что то во благо коммюнити.

P.S. С радостью оценю решение задачи ТС Корс-ом.

Ссылка на сообщение
Поделиться на другие сайты

Значение инкремента можно установить через auto_increment_increment. Не слишком удачная идея.

А можно через задавать ID-шник записи через триггер. Создается через CREATE TRIGGER (маны найдете).

Ссылка на сообщение
Поделиться на другие сайты
  • 7 месяцев спустя...

в view/CartView.php добавить ПЕРЕД

// Добавляем заказ в базу
$order_id = $this->orders->add_order($order);

следующие строки

// получаем айди последнего заказа и прибавляем к нему число
$this->db->query('SELECT id FROM __orders ORDER BY id DESC LIMIT 1');
$last_id = $this->db->result('id');
if(!empty($last_id))
	$order->id = intval($last_id)+3;

при оформлении заказа каждый заказ будет с номером+3.

Ссылка на сообщение
Поделиться на другие сайты

в view/CartView.php добавить ПЕРЕД

// Добавляем заказ в базу
$order_id = $this->orders->add_order($order);

следующие строки

// получаем айди последнего заказа и прибавляем к нему число
$this->db->query('SELECT id FROM __orders ORDER BY id DESC LIMIT 1');
$last_id = $this->db->result('id');
if(!empty($last_id))
	$order->id = intval($last_id)+3;

при оформлении заказа каждый заказ будет с номером+3.

Отлично. Спасибо. 

Ссылка на сообщение
Поделиться на другие сайты

Так сделать невозможно потому как ID заказ генерируется после создания записи в sql.

+ id заказа автоматически генерируется и приплюсовать уж точно не выйдет.

 

 

в view/CartView.php добавить ПЕРЕД

// Добавляем заказ в базу
$order_id = $this->orders->add_order($order);

следующие строки

// получаем айди последнего заказа и прибавляем к нему число
$this->db->query('SELECT id FROM __orders ORDER BY id DESC LIMIT 1');
$last_id = $this->db->result('id');
if(!empty($last_id))
	$order->id = intval($last_id)+3;

при оформлении заказа каждый заказ будет с номером+3.

 

mishanya, поздравляю! Шикарный способ! Как говорится, все гениальное просто...

 

Разве что маленькое замечание есть. Если оформлен заказ 18,  потом удален админом, а потом оформлен новый совсем другой заказ, то он тоже получит номер 18. Во-первых, у админа в письмах будут два РАЗНЫХ заказа 18 - один источник ошибок. Если админ не использует письма, а работает по админке, то может случиться и более интересная ситуация. Может ведь позвонить и первый покупатель и спросить что-то про заказ 18.  Если админ не догадается уточнить, какой из 18-х заказов обсуждается, то может появиться хорошая путаница  - покупатель по ответам админа может подумать, что админ ненормальный - магазину убыток...

Хотя ситуация на практике довольно редкая, но лучше бы чуток подправить код...

Ссылка на сообщение
Поделиться на другие сайты

mishanya, поздравляю! Шикарный способ! Как говорится, все гениальное просто...

 

Разве что маленькое замечание есть. Если оформлен заказ 18,  потом удален админом...

 

если админ удалил заказ 18, а потом пришел новый заказ 18, не лумаю что он перепутает. это уже из области фантастики.

 

можно так сделать

// получаем айди следующего заказа и прибавляем к нему число
$this->db->query("SHOW TABLE STATUS LIKE 's_orders'");
$last_id = $this->db->result('Auto_increment');
if(!empty($last_id))
	$order->id = intval($last_id)+3;
Ссылка на сообщение
Поделиться на другие сайты

Теперь, по-моему, совсем замечательно...
 
 

если админ удалил заказ 18, а потом пришел новый заказ 18, не лумаю что он перепутает. это уже из области фантастики.

 

Если все события произошли в течение последнего часа, то не перепутает. А если вопрос связан с заказом, оформленным два-три дня тому назад, то очень может быть. А еще бывает, что в магазине админов НЕСКОЛЬКО.  Так что  это совсем не фантастика...

Изменено пользователем Kors
Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...