Форум сетевых администраторов
Показаны 11 сообщений на этой странице

Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- VBulletin 3.x.x (http://netadmin.ws/forum/forumdisplay.php?forumid=74)
-- Масс Удаление Юзеров (http://netadmin.ws/forum/showthread.php?threadid=8584)


Помещено Прохожий 26-04-2004 в 03:55:

Масс Удаление Юзеров

Приветствую.
Есть трабла и пока решения не нашел.
Глюк идет еще к версии 2х (раньше выдавал ошибку, сейчас пишет что все ок, но юезров не трет так или иначе)
Ð_аньше руки не доходили, но сейчас стравнивал оригинал таблиц в sql и убрал последствия прошлых хаков.
Т.е. структура базы сейчас соответствует оригиналу.

Не получается массого удалить юзеров! По одному- за добрую душу.

Есть ли какие отдельные скрипты на эту тему?

Буду благодарен за помощ\идеи.


(vBulletin 3.0.1)


Помещено Igor 26-04-2004 в 20:55:

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

__________________
C уважением, Игорь
cblog.ru


Помещено Прохожий 27-04-2004 в 04:31:

Игорь, да, должно быть так Но нету Вот ИМЕЕНО по этой причине и спрашиваю!

__________________
The path of the righteous man is beset on all sides by the inequities of the selfish and the tyranny of evil men...
http://www.pc-zone.ru


Помещено MCTarakan 28-04-2004 в 03:09:

дык, а чо ваще ничо не пишет или как?

__________________
yMC.ru - хомяк музыканта


Помещено Прохожий 28-04-2004 в 08:48:

Так, выше написал что это идет еще к истокам VB2x (года два)
Был нюка. Было пару тысяч юзеров. Ð_ешил их конвертнуть на форум VB а интегрированый на нюке прикрыть.
Конвертация не удалась - юзеры конвертнулись, но под номерами и т.д. - я в базе их потер.
Потом закрыл -на нюке форум и булл оставил - написал что бы на форуме регились.
Все было ок- просто небыло надобности тереть массого.
А позже, когда на форуме было около 10к народу захотелось вычистить неактивизированых. И не вышло - форум выдавал ошибку файла user.php
Забросил это дело. Забил.
Сейчас стоит VB3 и процесс чистки проходит- показывает что все трет и т.д., ошибок не показывает- типа все проходит гладко. Но в итоге юзеры остаются.
Уже как кость в горле - более 3к неактивизировыных. Висят в базе, имена забивают.
Смотрю тут polo вроде сечет по всему этому- думал получу ответ на проблемму. А в ответ то- тишинаааааааа....
...и тихо падал снег...

__________________
The path of the righteous man is beset on all sides by the inequities of the selfish and the tyranny of evil men...
http://www.pc-zone.ru


Помещено Bochkarev_D.S. 29-04-2004 в 15:54:

Lightbulb Re: Масс Удаление Юзеров

quote:
Первоначальное сообщение от Прохожий

Есть ли какие отдельные скрипты на эту тему?
Буду благодарен за помощ\идеи.


PHP:
<?php

error_reporting
(7);
require(
"./global.php");

######## CONFIGURATION ########
$daycut = '30'; // Users inactive for this number of days will be deleted
$postcut = '1'; // Users with less than this amount of posts will be deleted
###############################

echo '<b>Mass User Delete Script</b><br><br>';

$currenttime = time();
$inactivesecs = (86400 * $daycut);
$inactivezig = ($currenttime - $inactivesecs);
$delnum = '0';

$inactivequery=$DB_site->query("SELECT userid,username,lastactivity FROM user WHERE posts < '$postcut' AND lastactivity < '$inactivezig' ORDER BY userid");
while (
$inactive=$DB_site->fetch_array($inactivequery)) {
    
$userid = $inactive[userid];
    
$DB_site->query("UPDATE post SET username='".addslashes($inactive[username])."',userid=0 WHERE userid='$userid'");
    
$DB_site->query("DELETE FROM userfield WHERE userid='$userid'");
    
$DB_site->query("DELETE FROM access WHERE userid='$userid'");
    
$DB_site->query("DELETE FROM calendar_events WHERE userid='$userid'");
    
$DB_site->query("DELETE FROM customavatar WHERE userid='$userid'");
    
$DB_site->query("DELETE FROM moderator WHERE userid='$userid'");
    
$DB_site->query("DELETE FROM privatemessage WHERE userid='$userid'");
    
$DB_site->query("DELETE FROM subscribeforum WHERE userid='$userid'");
    
$DB_site->query("DELETE FROM subscribethread WHERE userid='$userid'");
    
$DB_site->query("DELETE FROM session WHERE userid='$userid'");
    
$DB_site->query("DELETE FROM user WHERE userid='$userid'");
    echo 
"$inactive[username] has been deleted.<br>";
    
flush();
    
$delnum++;
}

echo 
"<br><b>$delnum users have been deleted and the operation is complete!  Have a nice day!</b>";

?>



положить в папку admin, настройки в самом верху. За привычку возьми базу бакапить перед такими вещами.


Помещено MCTarakan 30-04-2004 в 02:40:

а можно например прямо из Ð_НÐ_Админа ведь поидее?!

__________________
yMC.ru - хомяк музыканта


Помещено Bochkarev_D.S. 30-04-2004 в 05:54:

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


Помещено Прохожий 30-04-2004 в 06:05:

Mass User Delete Script

There seems to have been a slight problem with the * database.
Please try again by pressing the refresh button in your browser.

An E-Mail has been dispatched to our Technical Staff, who you can also contact if the problem persists.

We apologise for any inconvenience.

-------------------------------------------------------------------------
Database error in vBulletin 3.0.1:

Invalid SQL: DELETE FROM calendar_events WHERE userid='52'
mysql error: Table 'db1476a.calendar_events' doesn't exist

mysql error number: 1146

Date: Friday 30th of April 2004 07:51:43 AM
Script: remove.php
Referer:
Username: *
IP Address: *
-------------------------------------------------------------------------



вот, 'db1476a.calendar_events'
db1476a- это моя база данных а не префикс

__________________
The path of the righteous man is beset on all sides by the inequities of the selfish and the tyranny of evil men...
http://www.pc-zone.ru


Помещено Bochkarev_D.S. 30-04-2004 в 06:29:

у меня 2.xx, глянуть самим под свою базу не трудно, кода то 10 строчек.


Помещено Прохожий 30-04-2004 в 09:46:

Bochkarev_D.S. ага, таблицы
calendar_events ---> event
privatemessage ---> pm

Ага, неплохо для удаления неактивных или по временному отрезку.
Сможешь замодифить для того, что бы проверял ТОЛЬКО по неактивизированым аккаунтам?

__________________
The path of the righteous man is beset on all sides by the inequities of the selfish and the tyranny of evil men...
http://www.pc-zone.ru


Формат времени GMT. Текущее время 02:41.
Показаны 11 сообщений на этой странице

Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.