Форум русской поддержки Joomla!® CMS
05.12.2016, 08:32:53 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Как создать 6000 новых пользователей?

 (Прочитано 427 раз)
0 Пользователей и 1 Гость смотрят эту тему.
lopata12
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 32


« : 06.01.2015, 22:25:37 »

Здравствуйте,
есть в MySQL таблица с 3-мя колонками ID USER USERNAME и 6000 строк.
можно ли ее както вписать в таблицу jos_users (таблица пользователей Joomla), пользователи будут не активны,  пароли будут выдаваться персонально.
"обчитал" уже много форумов и тем по слиянию таблиц, но все както безуспешно.
пробовал штатными средствами php 5.3 не получается скопировать и переместить, пробовал дописывать стобцы как jos_users, на этапе добавления индексов стопнулось, почемуто не хотел принимать столбик ID Индекс Prymary.
спасибо.
Записан
Aleks.Denezh
Практически профи
*******

Репутация: +372/-4
Offline Offline

Пол: Мужской
Сообщений: 2762



« Ответ #1 : 06.01.2015, 23:46:32 »

Как программно зарегить юзера: http://inet-reklama.com/blog/joomla/programmnaya-registratsiya-polzovatelya-v-joomla-2-5-i-vyshe
Выбираете все ваши 6000 строк, поля только USER, и USERNAME
А дальше в цикле создаете 6к юзеров, с рандомным паролем и E-mail!

p.s. не забыть set_time_limit поставить в ноль!
Записан
lopata12
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 32


« Ответ #2 : 07.01.2015, 15:26:18 »

спасибо)
Записан
lopata12
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 32


« Ответ #3 : 07.01.2015, 16:18:16 »

сделал такой запрос в mysql:

INSERT INTO `ht6kv_users`( `name`, `username` )  
SELECT  `name`, `username`
FROM `ht6kv_users1`  
WHERE `name`

п.с. вроде получилось
добавились все 6000 строк с пустыми паролями и емейлом. я так понимаю Joomla блокирует вход по пустым паролем. но на всякий я их дезактивировал.

« Последнее редактирование: 07.01.2015, 16:23:48 от lopata12 » Записан
AlekVolsk
Профи
********

Репутация: +316/-3
Offline Offline

Пол: Мужской
Сообщений: 6453



« Ответ #4 : 07.01.2015, 17:15:15 »

Это неправильный подход, попробуйте теперь любому из этих юзеров для примера что-либо поменять и поиграться с их правами.
Записан
Aleks.Denezh
Практически профи
*******

Репутация: +372/-4
Offline Offline

Пол: Мужской
Сообщений: 2762



« Ответ #5 : 08.01.2015, 12:42:20 »

сделал такой запрос в mysql:

INSERT INTO `ht6kv_users`( `name`, `username` )  
SELECT  `name`, `username`
FROM `ht6kv_users1`  
WHERE `name`

п.с. вроде получилось
добавились все 6000 строк с пустыми паролями и емейлом. я так понимаю Joomla блокирует вход по пустым паролем. но на всякий я их дезактивировал.


В итоге у вас скорее всего ничего не получилось, скорее всего вам не получится зайти под любым из этих юзеров и выдать им права..
Записан
lopata12
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 32


« Ответ #6 : 08.01.2015, 18:34:24 »

Здравствуйте
Заходит нормально, единственное нужно заходить в каждого и давать ему права, пароль и мейл. В таблицу MySQL тоже нормально все записывает, как у обычно созданного юзера.
Сommunity builder синхронизирует только заполненных юзеров.  Какие могут  быть подводные камни с этим методом?


п.с. а вот как скопировать Id столбик, выдает ошибку
SQL запрос:
INSERT INTO `ht6kv_users3` (`id`)
SELECT `id`
FROM `ht6kv_users`
Ответ MySQL: Документация
#1146 - Table 'wazr_u1.ht6kv_users3' doesn't exist


Не совсем разобрался с Вашим советом Istaan, не хватает знаний )
"
Как программно зарегить юзера: http://inet-reklama.com/blog/joomla/programmnaya-registratsiya-polzovatelya-v-joomla-2-5-i-vyshe
Выбираете все ваши 6000 строк, поля только USER, и USERNAME
А дальше в цикле создаете 6к юзеров, с рандомным паролем и E-mail!
p.s. не забыть set_time_limit поставить в ноль!
"
куда вставить этот код...

$user = new JUser;
$userData = array( 'name' => 'Вася Пупкин',
    'username' => 'VasyaPupkin',
    'password' => 'passord1234',
    'password2' => 'passord1234',
    'email' => 'vasyapupkin@inet-reklama.com',
    'groups' => array( 2 )
);
$user->bind( $userData );
if ( $user->save() ) {
    echo 'Пользователь ' . $user->username . ' успешно зарегестрирован!';

можно поподробнее куда вставить данный код ...


спасибо за ответ.
« Последнее редактирование: 08.01.2015, 19:20:06 от lopata12 » Записан
AlekVolsk
Профи
********

Репутация: +316/-3
Offline Offline

Пол: Мужской
Сообщений: 6453



« Ответ #7 : 08.01.2015, 22:20:13 »

А где располагается ваш код копирования пользователей?
Вообще этот код вставляется в цикл перебора результатов запроса из старой базы. Id вы никак не скопируете. Пароль можете оставлять пустым - J сама его сформирует, а вот email нужно записывать обязательно.
Записан
Aleks.Denezh
Практически профи
*******

Репутация: +372/-4
Offline Offline

Пол: Мужской
Сообщений: 2762



« Ответ #8 : 09.01.2015, 00:01:13 »

Код создания юзера можно вставить где угодно, хоть в файле index.php вашего шаблона
Записан
lopata12
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 32


« Ответ #9 : 09.01.2015, 23:47:29 »

спасибо, вы ребята настоящие профи! будем  пробовать)
Записан
Mick_20
Завсегдатай
*****

Репутация: +3/-0
Online Online

Пол: Мужской
Сообщений: 519


Как бы это заработать деньжат...


« Ответ #10 : 16.11.2016, 09:16:15 »

Цитировать
$user = new JUser;
$userData = array( 'name' => 'Вася Пупкин',
    'username' => 'VasyaPupkin',
    'password' => 'passord1234',
    'password2' => 'passord1234',
    'email' => 'vasyapupkin@inet-reklama.com',
    'groups' => array( 2 )
);
$user->bind( $userData );
if ( $user->save() ) {
    echo 'Пользователь ' . $user->username . ' успешно зарегестрирован!';

спасибо. все работает как часы.
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet