Модуль для генерации случайных чисел заказ?

Ahmad

Постоялец
Регистрация
4 Май 2013
Сообщения
86
Реакции
1
Есть модуль, который позволяет использовать случайные числа порядка, подобные тем, которыми Amazon?

Примеры:

105-5471226-9043029
104-7858994-6164891

Я нашел несколько модулей, которые используют такие вещи, как дата, и т.д., для получения номера заказа, но все же они не 100% случайных чисел, как те выше.
 
Тем не менее дожидаясь ответа ..
 
Вот подобный модуль
Скрытое содержимое доступно для зарегистрированных пользователей!

Сам интересуюсь этим вопросом, если еще что накопаю - напишу.
 
Вот подобный модуль

Сам интересуюсь этим вопросом, если еще что накопаю - напишу.
30 баксов жалко отдавать за такой модуль. Хорошая идея для начинающих магазинов. В глаза не бросается номер заказа 5. А так номер буде 2581225-005. Круто же. Но, блин, не 30 баксов же.
 
ладно, чуть разобрался, коротко опишу здесь.
генерация номера заказа происходит автоматически в БД, за это отвечает атрибут AUTO_INCREMENT ключа order_id, таблицы order.
Как сделать "кастомной" генерацию номера заказа:
  1. Убрать вышеуказанный атрибут таблицы(проще всего сделать через пхпмайадмин)
  2. В файле /catalog/model/checkout/ordep.php написать отдельную функцию, которая будет генерировать номер
  3. Изменить функцию addOrder, в которой в первом INSERTе явно указать сгенерированный номер, и поместить его в переменную $order_id (вместо $this->db->getLastId())

ПРЕДУПРЕЖДАЮ: это не руководство, это просто подсказка куда копать для людей, понимающих в MYSQL и PHP


Если нужно просто отправить пользователю немного иной номер заказа, но не менять архитектуру магазина, можно изучить Для просмотра ссылки Войди или Зарегистрируйся
 
ладно, чуть разобрался, коротко опишу здесь.
генерация номера заказа происходит автоматически в БД, за это отвечает атрибут AUTO_INCREMENT ключа order_id, таблицы order.
Как сделать "кастомной" генерацию номера заказа:
  1. Убрать вышеуказанный атрибут таблицы(проще всего сделать через пхпмайадмин)
  2. В файле /catalog/model/checkout/ordep.php написать отдельную функцию, которая будет генерировать номер
  3. Изменить функцию addOrder, в которой в первом INSERTе явно указать сгенерированный номер, и поместить его в переменную $order_id (вместо $this->db->getLastId())

ПРЕДУПРЕЖДАЮ: это не руководство, это просто подсказка куда копать для людей, понимающих в MYSQL и PHP

Если нужно просто отправить пользователю немного иной номер заказа, но не менять архитектуру магазина, можно изучить Для просмотра ссылки Войди или Зарегистрируйся


Я могу попытаться сделать это сам. Единственная проблема, которую я вижу, что 'Order ID' не может быть что-то вроде этого: "105-5471226-9043029". Это может быть это только: "10554712269043029". Как я могу сохранить 'Order ID' как это слишком: "105-5471226-9043029"?
 
как вариант изменить тип order_id на varchar, но после этого надо будет менять в моделях админки, и каталога все SELECT
 
как вариант изменить тип order_id на varchar, но после этого надо будет менять в моделях админки, и каталога все SELECT

Любая идея, где изменения должны будут именно? Я имею в виду, в котором файлы?
 
Назад
Сверху