Перейти к содержимому
Открыть в приложении

Удобный способ просмотра. Узнать больше.

Дизайн и модификация Invision Community

Полноэкранное приложение на главном экране с push-уведомлениями, медалями и многим другим.

Чтобы установить это приложение на iOS и iPadOS
  1. Нажмите иконку «Поделиться» в Safari
  2. Прокрутите меню и нажмите На экран «Домой».
  3. Нажмите Добавить в правом верхнем углу.
Чтобы установить это приложение на Android
  1. Нажмите меню из трёх точек (⋮) в правом верхнем углу браузера.
  2. Нажмите Добавить на главный экран или Установить приложение.
  3. Подтвердите, нажав Установить.
Русский язык для Invision Community 5

Создание большого количества пользователей

Приветствую!

Требуется создать автоматически 150 аккаунтов на форуме 3.1.4, имена будут состоять из цифр, и эл. адреса будут отличатся только цифрами, но требуется чтобы пароли были разные. Регистрировать по одному это конечно очень долго, возможно ли сделать какой-нибудь запрос или же можно сделать эту операцию иными средствами?

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

$member = IPSMember::create( array(
'members'	=> array(
	'name'		=> 'Joe Bloggs',
	'email'		=> 'joe.bloggs@example.com',
	'password'	=> 'passy'
	)
) );

  • Автор

Не много не ясен принцип действия, нужно создать отдельный файл или вставить в уже существующий? И ещё, данной конструкцией можно зарегистрировать только одного пользователя, для большего количества мне нужно копировать:

 

               'name'          => 'Joe Bloggs',
               'email'         => 'joe.bloggs@example.com',
               'password'      => 'passy'
               )

 

Так?

для большего количества мне нужно копировать

Файл в корень форума

 

<?php

define( 'IPB_THIS_SCRIPT', 'public' );

require_once( 'initdata.php' );
require_once( IPS_ROOT_PATH . 'sources/base/ipsRegistry.php' );
require_once( IPS_ROOT_PATH . 'sources/base/ipsController.php' );

$registry = ipsRegistry::instance(); 
$registry->init();

$nomer = 1;

while ( $nomer <= '150') {

$name = 'user' .$nomer; 
$email = $name .'@test.ru'; 
$password = base_convert(rand(10e16, 10e20), 10, 36); // создаем случайный пароль

$member = IPSMember::create( array(
	'members' => array(
		'name'                  => $name,
		'members_display_name'  => $name,
		'email'                 => $email,
		'password'              => $password
		)
) );

$nomer ++;

}

?>

 

Создаст 150 пользователей. Пароль случайный.

 

имена будут состоять из цифр

Как то сразу с утра не вник.

Имена будут от user1 до user150. Но поменять на набор цифр не так сложно :)

  • Автор

Спасибо, с настройками разберусь, а как вывести пароли созданных аккаунтов?

Но поменять на набор цифр не так сложно

$name = rand(10000, 999999999);

Не думаю, что при 150 генераций одно и тоже число повторится два раза.

 

а как вывести пароли созданных аккаунтов?

А оно надо? Можно скинуть все в файл, но из-за разовой операции можно просто скопировать с экрана полученные результат. Для этого

заменить

$nomer ++;

 

на

	
echo 'Логин: '  .$name .' Пароль: ' .$password .'<br />';

$nomer ++;

  • Автор

можно просто скопировать с экрана полученные результат

Это и нужно.

 

Для этого

заменить

Ошибка только:

 

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in \home\test.ru\www\member_create.php on line 29

Именно в этой строке:

 

        echo 'Логин: '  .$name .' Пароль: ' .$password '<br />'; 

 

Решил изменив на:

 

        echo 'Логин: '  .$name .' Пароль: ' .$password . '<br />'; 

Ошибка только:

Ага. Поправил в исходном сообщение. Как-то пропустил точку. :(

Но можно и так:

 

echo "Логин: $name  Пароль:  $password  <br />"; 

  • Автор

Ага. Поправил в исходном сообщение. Как-то пропустил точку. :(

 

Нечего страшного.) Главное всё работает, спасибо!

  • 2 года спустя...

Подскажите, как сделать, чтобы логины для юзеров брались из txt файла, по списку?

(ники брал из текстового файла)

<?php

define( 'IPB_THIS_SCRIPT', 'public' );
define( 'IPS_PUBLIC_SCRIPT', 'index.php');
define( 'IPS_ENFORCE_ACCESS', true); // с 3.1.*
require_once( 'initdata.php' );

require_once( IPS_ROOT_PATH . 'sources/base/ipsRegistry.php' );
require_once( IPS_ROOT_PATH . 'sources/base/ipsController.php' );

$registry = ipsRegistry::instance();
$registry->init();

$nicks = file( 'nick.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES );

foreach( $nicks as $v )
{
$name  = $v; 
$email = $v .'@test.ru'; 
$password = base_convert(rand(10e16, 10e20), 10, 36); // создаем случайный пароль

$member = IPSMember::create( array(
	'members' => array(
		'name'                  => $name,
		'members_display_name'  => $name,
		'email'                 => $email,
		'password'              => $password
	)
) );

echo "Login: {$name} Password: {$password}<br>";
}

  • 1 месяц спустя...

Подскажите для 3.4 подойдет скрипт?

Подойдет, API не изменилось.

Подойдет, API не изменилось.

Подскажите как файл назвать?

Какой файл?

Какой файл?

ну тут написали файл ложить в корень форума http://ipbskins.ru/forum/topic7755.html/page__view__findpost__p__50772

 

Не совсем понял куда этот код прописывать.

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.