Как добавить пользователей, используя только список емайлов.

Автор Stanko, 03 сентября 2012, 07:49:40

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Stanko

Недавно установил СМФ 2.0.2 и очень благодарен разработчикам за его создание и поддержку !

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

Вопрос, можно-ли как-либо автоматизировать внесение данных емайлов в базу используя список емайлов (пусть даже member's name=email) ? Знаю что туплю  :facepalm: , но тем не менее. Поиском пользовался, темы в основном о переносе списка пользователей из базы в базу. А иначе, в ручную это получается очень долго.

Благодарю за внимание и совет !  :-X

maestrosite.ru

в корень форума положите файлик register_users.php:
<?php
$emails 
filedirname(__FILE__) . 'emails.txt',  FILE_IGNORE_NEW_LINES FILE_SKIP_EMPTY_LINES );
$emails array_map'trim'$emails );
$emails array_flip$emails );

require 
dirname(__FILE__) . '/SSI.php';
require 
$sourcedir '/Subs-Members.php';
foreach( 
$emails as $email => $k )
{
$regOption = array(
'interface' => 'admin',
'username' => $email,
'email' => $email,
'password' => '',
'check_email_ban' => false,
'require' => 'activation',
);
$emails$email ] = registerMember$regOption );
}

template_header();
$i 0;
echo 
'<table>';
foreach( 
$emails as $email => $id )
{
echo '<tr><td>', ++$i')</td><td>'htmlspecialchars($email), '</td><td>';
is_int($id) ? print((int)$id) : var_dump($id);
echo '</td></tr>';
}
echo 
'</table>';
template_footer();


Также в корень файлик emails.txt, в котором каждый адрес в отдельной строке (либо перепишите заполнение $emails). Затем запустите http://_ваш_форум_/register_users.php появится список, в котором будут идентификаторы пользователей или ошибки, если возникнут.
Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

Stanko

Maestrosite.ru, огромное спасибо за ваше время и помощь !

Выходит ошибка:

Parse error: syntax error, unexpected T_VARIABLE in /forum/register_users.php on line 2

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

Поэкспериментировал, но дальше процесс не пошел ..  :-\ "Как быть (или не быть) ? - Вопрос."


Stanko

Вот, нашел: PHP Version 5.2.14

System    Linux  2.6.18-028stab070.14 #1 SMP Thu Nov 18 16:04:02 MSK 2010 i686
Build Date    Sep 9 2010 18:44:07
Configure Command    './configure' '--enable-bcmath' '--enable-calendar' '--enable-ftp' '--enable-gd-native-ttf' '--enable-libxml' '--enable-magic-quotes' '--enable-mbstring' '--enable-pdo=shared' '--enable-sockets' '--enable-zip' '--prefix=/usr' '--with-curl=/opt/curlssl/' '--with-freetype-dir=/usr' '--with-gd' '--with-gettext' '--with-imap=/opt/php_with_imap_client/' '--with-imap-ssl=/usr' '--with-jpeg-dir=/usr' '--with-kerberos' '--with-libxml-dir=/opt/xml2/' '--with-mcrypt=/opt/libmcrypt/' '--with-mysql=/usr' '--with-mysql-sock=/var/lib/mysql/mysql.sock' '--with-mysqli=/usr/bin/mysql_config' '--with-openssl=/usr' '--with-openssl-dir=/usr' '--with-pcre-regex=/opt/pcre' '--with-pdo-mysql=shared' '--with-pdo-sqlite=shared' '--with-png-dir=/usr' '--with-sqlite=shared' '--with-ttf' '--with-xpm-dir=/usr' '--with-zlib' '--with-zlib-dir=/usr'
Server API    CGI
Virtual Directory Support    disabled
Configuration File (php.ini) Path    /usr/lib
Loaded Configuration File    /usr/local/lib/php.ini
Scan this dir for additional .ini files    (none)
additional .ini files parsed    (none)
PHP API    
PHP Extension    
Zend Extension    
Debug Build    no
Thread Safety    disabled
Zend Memory Manager    enabled
IPv6 Support    enabled
Registered PHP Streams    https, ftps, compress.zlib, php, file, data, http, ftp, zip
Registered Stream Socket Transports    tcp, udp, unix, udg, ssl, sslv3, sslv2, tls
Registered Stream Filters    zlib.*, convert.iconv.*, string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed

maestrosite.ru

#5
Проверьте, возможно при копировании вставили какой-либо символ. Работающий файлик в приложении.
Если и он не будет работать, то попробуйте заменить первую строку на <?php
$emails 
filedirname(__FILE__) . 'emails.txt' );


upd приложение обновлено
Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

Stanko

Maestrosite.ru, благодарю еще раз !
Я сохранил ваш файл (из предыдущего поста) в расширении php.
Выдает примерно такой код.  :o


Warning: file(/public_html/forumemails.txt) [function.file]: failed to open stream: No such file or directory in /public_html/forum/register_users.php on line 3

Warning: array_map() [function.array-map]: Argument #2 should be an array in /public_html/forum/register_users.php on line 4

Warning: array_flip() [function.array-flip]: The argument should be an array in /public_html/forum/register_users.php on line 5

Warning: Invalid argument supplied for foreach() in /public_html/forum/register_users.php on line 9

Warning: Cannot modify header information - headers already sent by (output started at /home/stankoz/public_html/forum/register_users.php:3) in /public_html/forum/Sources/Subs.php on line 3335

Warning: Cannot modify header information - headers already sent by (output started at /public_html/forum/register_users.php:3) in /public_html/forum/Sources/Subs.php on line 3336

Warning: Cannot modify header information - headers already sent by (output started at /public_html/forum/register_users.php:3) in /public_html/forum/Sources/Subs.php on line 3342

Warning: Cannot modify header information - headers already sent by (output started at /public_html/forum/register_users.php:3) in /public_html/forum/Sources/Subs.php on line 3345

-----------------------------------------------------------------------------------------------------------------------
Warning: Invalid argument supplied for foreach() in /public_html/forum/register_users.php on line 25

maestrosite.ru

обновил приложение выше, строку <?php
$emails 
filedirname(__FILE__) . '/emails.txt',  FILE_IGNORE_NEW_LINES FILE_SKIP_EMPTY_LINES );
Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

Stanko

Долго думал, выдал ответ:

а�б�аИаБаКаА!
а�аМб�, аКаОб�аОб�аОаЕ аВб� аПб�б�аАаЕб�аЕб�б� аИб�аПаОаЛб�аЗаОаВаАб�б�, б�аЛаИб�аКаОаМ аДаЛаИаНаНаОаЕ.
а�аАаЗаАаД

Щас еще раз попробую.

Stanko

#9
Почистил кэш, исправил ошибки, таблицы, вообщем нажал везде где мог и

О БОЖЕ !!! вижу, пользователи добавились !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

ЭТО СУПЕР, ЭТО ПРЕКРАСНО, ЭТО НЕВОЗМОЖНО !!!!!!!!!!  O0 angel smitten

Мaestrosite.ru, ВЫ ГЕНИЙ ! Класс !!! Премного !!!

Stanko

Скрипт замечательный ! Меньше чем за час добавил около 1000 юзверей.
Из багов: тормозится на:
1) дубликатах емайлов,
2)на слишком длинных емайлах,
3)на ошибочных емайлах.
Требуется апдейт !  ^-^

maestrosite.ru

Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

Stanko

Ну говорят в Фэйсбук 500 миллионов пользователей.

Нам стока не надо, 10 тысяч узкопрофильных было-бы неплохо.  :)

Мечты-мечты..  :'(

Ошибка (не с того не с сего): The database value you're trying to insert does not exist: username

Stanko

Maestrosite.ru,

подскажите пожалуйста, как добавить игнорирование существующих мемберов ?

:facepalm:

maestrosite.ru

в вызов $emails[ $email ] = registerMember( $regOption );
добавьте параметр:
$emails[ $email ] = registerMember( $regOption , true );
Тогда заполнение при ошибках останавливаться не будет. А  возникающие ошибки будут выводится на экран,  напротив проблемного адреса увидите среди значков всяких осмысленный текст .
Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

Stanko

Maestrosite.ru ,

"Она заработала !" , вы настоящий Гений !

PS: Данный скрипт сильно облегчает создание виртуального сообщества.

O0  :D  8)


AndreyB

Maestrosite.ru

Да акаунты появляются.
Но зайти под ними нельзя.
Как активировать акаунты?
Письма для активации не приходят

Спасибо

maestrosite.ru

Активировать как обычно. Эти пользователи от самостоятельно зарегистрировавшихся практически ни чем не отличаются. Посмотрите какие ошибки возникают. И какой режим у вас регистрации стоит.
Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

AndreyB

Стоял режим:мгновенная регистрация.
Установил регистрация по email.Писем нет
Активировать получается только вручную.

maestrosite.ru

Выставьте режим - активация по email и добавьте адрес из моей подписи.
Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru