Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Импорт/экспорт пользователей с joomla


Recommended Posts

Есть ли возможность импорта / экспорта пользователей с joomla в OcStore 2.x с историей заказов (желательно)

Интересны любые варианты.

Надіслати
Поділитися на інших сайтах


Готовых решений я не видел и думаю что их нет. а вот написать это вручную возможно.

Как хранятся пароли в джумле не помню. но возможно нужно будет или переделывать авторизацию пользователей по аналогии с джумлой или всем пользователям новые пароли создавать.

В заказе основное это сумма и какие товары были куплены, перенести это тоже можно. но если товары на сайтах не имеют ничего что бы давало возможность четко и однозначно находить соответсвие то в истории будут все основные данные( цена, название, модель артирбуты и название) но ссылки на сам товар не будет. елси же товары были перенесены с джумлы так что можно однозначно определить что есть что то и привязку тоже можно сделать.

Но на мой взгляд тут больше проблем чем толку. Кто захочет тот еще раз зарегистрируется. Должна быть весомая причина чтобы это делать. достаточно отправить всем старым пользователям письма что магазин обновился и надо регистрироваться заново.

Если все же перенос очень нужен то технически это реально.

Надіслати
Поділитися на інших сайтах

Механизм защиты паролем в jooml-е и ОС разный - хоть у обоих шифрование md5, но генерируются они по разному. Вы не сможете перенести пользователей с паролями. Единственный вариант - заставить всех пользователей после переноса использовать восстановление пароля.

Это принципиальная проблема.

Перенос заказов технически возможен, но тоже не на раз-два.

Надіслати
Поділитися на інших сайтах


Механизм защиты паролем в jooml-е и ОС разный - хоть у обоих шифрование md5, но генерируются они по разному. Вы не сможете перенести пользователей с паролями. Единственный вариант - заставить всех пользователей после переноса использовать восстановление пароля.

Это принципиальная проблема.

Перенос заказов технически возможен, но тоже не на раз-два.

Если я не ошибаюсь то джумла шифрует пароли простым md5 без каких либо добавок, если это так то нет никаких проблем перенести пароли на опенкарт.

Надіслати
Поділитися на інших сайтах

Джумла шифрует с солью. Но, даже если бы простым md5 - это вам никак не помогло бы перенести пароли в систему с другим методом шифрования. Для это надо сначала дешифровать пароль.

Надіслати
Поділитися на інших сайтах


пароль дешифровать не нужно. да и не дешифруется мд5. но если бы пароль в джумле был без соли то проблем бы не было - опенкарт понимает и чистые мд5 пароли. а если с солью то нужно будет дописывать еще одну проверку в функцию авторизации в опенкарте и реализовывать там такую же проверку как и в ждумле, по другому перенести возможности нет, но все же это реально. но вопрос стоил ли шкурка вычинки

Надіслати
Поділитися на інших сайтах

Да, понимает. Спасибо, не знал:

 

$customer_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "customer WHERE LOWER(email) = '" . $this->db->escape(utf8_strtolower($email)) . "' AND (password = SHA1(CONCAT(salt, SHA1(CONCAT(salt, SHA1('" . $this->db->escape($password) . "'))))) OR password = '" . $this->db->escape(md5($password)) . "') AND status = '1' AND approved = '1'");

Собственно, можно добавить (или переписать) проверку, как на джумле. Так что пользователей перенести можно без особых проблем.

 

дописывать еще одну проверку в функцию авторизации в опенкарте и реализовывать там такую же проверку как и в ждумле

Это как раз несложно.

Но в целом  - с пользователями, товарами, заказами и прочим блэкджеком - работы будет немало. Здесь действительно вопрос - стоит ли оно того.

Змінено користувачем Shureg
Надіслати
Поділитися на інших сайтах


Да, проверка не сложно. на вскидку думаю достаточно добавить OR password = (CONCAT('" . $this->db->escape($password) . "',salt) и увеличиь длину поля salt до нужной длины и помещать туда соль от ждумлы и должно заработать.

Надіслати
Поділитися на інших сайтах

неправильно

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

Надіслати
Поділитися на інших сайтах

  • 9 months later...

Скажите, а какие файлы вы редактировали?

Просто тоже сейчас пытаюсь перенести пользователей из joomla в opencart и застрял на паролях.

Не могу понять в каком файле править этот код:

$customer_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "customer WHERE LOWER(email) = '" . $this->db->escape(utf8_strtolower($email)) . "' AND (password = SHA1(CONCAT(salt, SHA1(CONCAT(salt, SHA1('" . $this->db->escape($password) . "'))))) OR password = '" . $this->db->escape(md5($password)) . "') AND status = '1' AND approved = '1'");

 

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.