[Помогите] Изменить номер заказа по-умолчанию

Тема в разделе "OpenCart", создана пользователем Love-world, 27 сен 2013.

  1. Love-world

    Love-world

    Регистрация:
    17 июл 2013
    Сообщения:
    161
    Симпатии:
    75
    Можно ли изменить номер заказа, который показывается на странице success по-умолчанию?! Т.е. чтобы к примеру, при первой покупке отсчет велся не с первой цифры, а например скажем с 3275, чтобы не возникало вопросов "покупаемости" у потенциальных клиентов. Спасибо.
     
  2. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Сделайте заказ, после чего через phpMyAdmin в БД отредактируйте таблицу orders. В поле order_id вашего заказа (или не вашего, главное, чтоб последнего, то есть - с самым большим номером) впишите вместо того значения, которое там будет - 3274. И следующий заказ в вашем магазине получит номер 3275.
     
    Zulus и Love-world нравится это.
  3. Yoda

    Yoda

    Регистрация:
    5 фев 2013
    Сообщения:
    122
    Симпатии:
    22
    Либо через пхпмайадмин в свойства таблицы orders в поле AUTO_INCREMENT нужно постаивть нужное значение
     
    Love-world нравится это.
  4. Love-world

    Love-world

    Регистрация:
    17 июл 2013
    Сообщения:
    161
    Симпатии:
    75
    Спасибо ребятам. И еще можно один вопрос, а как можно сбросить счетчик показателей на главной странице в админке. Т.е. всего продано, на какую сумму, и т.д. как сбросить все эти счетчики. В админке чего-то не нашел такой функции.
     
  5. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Эти счётчики не сбрасываются. Чтоб их обнулить, нужно удалить все заказы.
     
  6. kolich85

    kolich85

    Регистрация:
    19 сен 2013
    Сообщения:
    164
    Симпатии:
    93
    Можна збросить через базу даных.
     
  7. Eevvggeennyy

    Eevvggeennyy

    Регистрация:
    11 июн 2013
    Сообщения:
    50
    Симпатии:
    0
    а можно сделать так чтобы потом номера заказов увеличивались не на 1, а например на 7?
     
  8. Gafe62

    Gafe62

    Регистрация:
    11 окт 2013
    Сообщения:
    252
    Симпатии:
    30
    а не проще ли убрать инфу о номере заказа покупателю?
     
  9. Eevvggeennyy

    Eevvggeennyy

    Регистрация:
    11 июн 2013
    Сообщения:
    50
    Симпатии:
    0
    ну вообще номером удобно пользоваться. это нужная вещь!
     
  10. Gafe62

    Gafe62

    Регистрация:
    11 окт 2013
    Сообщения:
    252
    Симпатии:
    30
    Так в админке ты будешь его видеть, убери его из личного кабинета покупателя везде и в письме покупателю.
     
  11. angur

    angur

    Регистрация:
    21 окт 2013
    Сообщения:
    20
    Симпатии:
    1
    Оформляем заказ в магазине. Допустим, заказу присваивается номер 1. Далее, заходим в панель управления хостингом - БД - phpMyAdmin. В phpMyAdmin выбираем используемую БД (открываем все ее таблицы), находим oc_order, открываем ее и видим наш последний заказ с номером 1 (столбец "order_id"). Меняем номер заказа на любой другой, например, вместо "1" прописываем "1000". Следующий заказ, сделанный пользователем в интернет-магазине, будет уже имеет номер 1001. Как видим, все достаточно просто.


    Есть пару плагинов которые делают рендомные номера. КРоме того встречал скрипт который делает описанное выше автоматически
     
  12. Регина

    Регина

    Регистрация:
    25 окт 2013
    Сообщения:
    30
    Симпатии:
    0
    А нет специального модуля, который бы автоматизировал рандомизацию?
     
  13. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Рандомных номеров заказов быть не может, потому что в таком случае они начнут путаться (один номер может присвоиться несколько раз). Изменение стартового номера всего лишь смещает счётчик, но не делает генерацию номеров рандомной.
     
  14. fes

    fes

    Регистрация:
    25 янв 2015
    Сообщения:
    8
    Симпатии:
    2
    я вот тоже думаю что это не возможно.
    рандом выставляется же между определенных чисел.
    исходя из этого он может один заказ поставить наприме 20 торой 40 а потом 10.
    это не вариант.
     
  15. ssergik

    ssergik

    Регистрация:
    19 июн 2015
    Сообщения:
    11
    Симпатии:
    4
    Здравствуйте!
    Подскажите а как можно уменьшить ID заказа. Случайно в php admin поставил большее числе чем надо теперь все заказы имеют шестизначную цифру. как сделать опять пятизначную???
     
  16. Master2KAZ

    Master2KAZ

    Регистрация:
    25 окт 2014
    Сообщения:
    183
    Симпатии:
    72
    Все делается в phpMyAdmin.

    1. Выясняешь максимальное пятизначное значение order_id. Обозначим его как MAX_5.
    Код:
    SELECT MAX(order_id) FROM oc_order WHERE order_id<'100000';
    
    2. Выясняешь минимальное шестизначное значение order_id. Обозначим его как MIN_6.
    Код:
    SELECT MIN(order_id) FROM oc_order WHERE order_id>'99999';
    
    3. Обновляешь ВСЕ шестизначные order_id на пятизначные. (Вместо MIN_6 и MAX_5 вставляешь полученные у тебя числа).
    Код:
    UPDATE oc_order SET order_id = order_id-(MIN_6 - MAX_5)+1 WHERE order_id>'99999';
    
    4. Теперь выясняешь просто максимальное значение order_id. Обозначим его как MAX_order_id.
    Код:
    SELECT MAX(order_id) FROM oc_order;
    
    5. Устанавливаешь новый AUTO_INCREMENT. (Вместо MAX_order_id вставляешь полученное у тебя число).
    Код:
    ALTER TABLE oc_order AUTO_INCREMENT = MAX_order_id + 1;
    
     
  17. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Master2KAZ, только нужно же ещё и в связанных таблицах номера поменять.
    Я думаю, что это в принципе, плохая затея и лучше оставить как есть, ибо очень легко создать кашу.
     
    Master2KAZ нравится это.
  18. Master2KAZ

    Master2KAZ

    Регистрация:
    25 окт 2014
    Сообщения:
    183
    Симпатии:
    72
    Точно. Связанные таблицы из головы вылетели. 3 пункт нужно сделать для всех таблиц "oc_order_..."

    Еще в каких-то таблицах order_id используется? Вроде нет.