Upd! Заменить файлы из архива в первом сообщении.
Добавлена сортировка, поле с количеством сообщений (кликабельно, переход к результаоту поиска всех сообщений пользователя) и еще кое-что.
Пчелкин писал(а):Лучше б в списках обнаруженных только подозрительных выводить
К сожалению, это невозможно. Попробую объяснить почему.
Вкратце алгоритм работы сценария таков: сначала по условиям поиска из БД форума определяется общее количество пользователей, удовлетворяющих этим условиям поиска. Затем в цикле максимум из 25 итераций (максимум столько пользователей выводится на странице) из таблицы
users
определяются необходимые данные пользователя и отправляется запрос к
http://www.stopforumspam.com. После получения ответа по результатам определяется "чистый" это пользователь, или нет. В завершение генерируется html-страница, которую мы видим.
На обработку одного пользователя (в частности у меня на локалке из дома требуется примерно 0.09 секунд, причем это зависит от скорости соединения с
http://www.stopforumspam.com и его загрузки). Но на каждый 10-й запрос почему-то требуется гораздо больше времени - более трех секунд. Таким образом для обработки пачки из 25 пользователей (столько на странице) требуется примерно 8 секунд. Для обработки 250 пользователей потребуется уже 70-80 секунд, что вылезает за обычное максимальное время выполнения сценария. А для того, чтобы определять только лишь является пользователь подозрительным или нет, необходимо провести поиск сразу с первого до последнего, не разбивая на страницы, и лишь потом сделать разбивку для удобства чтения. А если у вас 3000 пользователей...
Но есть и хорошие новости. Прошерстить абсолютно всех пользователей нужно только один раз в жизни (ну потратьте время), потом нужно будет проводить только еженедельную или ежемесячную проверку (это гораздо меньше пользователей и времени).
И еще хинт. Замените значение переменной
$per_page
с
25 на
9. Страниц будет в 2.5 раза больше, но генерироваться они будут в 7-8 раз быстрее.