Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Модуль Проверки Одинаковых Айпи!, Почти работает!
 
 автор: Flint   (13.03.2007 в 23:32)   письмо автору
 
 

Вобщем у меня в локалке сайт на пхпнюке, точнее сервер баттлнет (ну и сайт) юзеры начали злоупотреблять количеством аккаунтов на батлнет сервере, до 8 штук встретил у некоторых на одном айпи!
Это запрещено по правилам игр, типа прокачиваются и очки сами на себе набивают!
Так вот я написал скрипт (модуль для нюки) который выводит айпи, на которых количество зареганных юзеров превышает > 1,
, немогу вывести только на каждый айпи ВСЕ НИКИ справа от айпи, кто на этом айпи зареган, вот код:
Код:

<?php

/************************************************************************/
/* PHP-NUKE: Web Portal System                                          */
/* ===========================                                          */
/*                                                                      */
/* Copyright (c) 2006 by Francisco Burzi                                */
/* http://phpnuke.org                                                   */
/*                                                                      */
/* This program is free software. You can redistribute it and/or modify */
/* it under the terms of the GNU General Public License as published by */
/* the Free Software Foundation; either version 2 of the License.       */
/************************************************************************/

if (!defined('MODULE_FILE')) {
    die (
"You can't access this file directly...");
}

require_once(
"mainfile.php");
$module_name basename(dirname(__FILE__));
global 
$db;
include(
"header.php");

//$index = 0;
OpenTable();


// start--------------------------
echo "Юзеры имеющие больше одного аккаунта на нашем сервере:<br>";
$result mysql_query("SELECT acct_username,count( acct_lastlogin_ip ) AS count, acct_lastlogin_ip FROM pvpgn_bnet GROUP BY acct_lastlogin_ip HAVING count >1 LIMIT 0 , 60");

$c "";
$a 1;
$b 1;
// вывод айпишников с user >1
while ($row $db->sql_fetchrow($result)) {
    
$ip filter($row['acct_lastlogin_ip'], "nohtml");
    
$yuzaki filter($row['acct_username'], "nohtml");
    
$count filter($row['count'], "nohtml");
    
$aipishniki .= "$c$a:&nbsp;<a href=\"http://$ip\" target=\"new\">$ip</a> (аккаунтов $count$yuzaki <br>";

$result2 mysql_query("SELECT acct_username,acct_lastlogin_ip FROM pvpgn_bnet WHERE acct_lastlogin_ip LIKE $ip"); 

while (
$row2 $db->sql_fetchrow($result2)) {
    
$nameuser2 filter($row2['acct_username'], "nohtml");
$aipishniki .= "$c$a:&nbsp;<a href=\"http://$ip\" target=\"new\">$ip</a> (аккаунтов $count$yuzaki <br>";
$b++;
};


$a++;
};
echo 
$aipishniki;
// stop ---------------------------
CloseTable();

include(
"footer.php");

?>

Вот отдельно то в пхпмиадмине если я ввожу например код

SELECT acct_username
FROM pvpgn_bnet
WHERE acct_lastlogin_ip LIKE '10.159.17.198'

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

Помогите пожалста вывести напротив КАЖДОГО найденного айпишника у которого больше одного логина, все логины через запятую! 4 дня потерял.....

   
 
 автор: Ziq   (13.03.2007 в 23:37)   письмо автору
 
   для: Flint   (13.03.2007 в 23:32)
 

.

   
 
 автор: bronenos   (14.03.2007 в 00:29)   письмо автору
 
   для: Flint   (13.03.2007 в 23:32)
 

Названия полей свои поставьте
<?
$ans 
mysql_query ("select ip, nick from users where (select count(*) from users where ip='$IP') > 1");

while (
$row mysql_fetch_assoc($ans))
  
$list[$row['ip']][] = $row['nick'];

foreach (
$list as $ip=>$nl)
  print 
$ip ': ' implode (', '$nl);
?>

Попробуйте так

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования