sql - не правильные связки

Технические вопросы по UTM 5.0
Ответить
djfox
Сообщения: 11
Зарегистрирован: Пт авг 24, 2007 11:26

sql - не правильные связки

Сообщение djfox »

Решил я сделать монитор подключений (тупая штука, в старых версиях утм-а была) мелочь, а приятно.

Как водится нашел таблицу с логинами\паролями ip_groups
связал ip_group_id c id из таблицы users
ну и для пущей важности добавил houses

хотя дома к сути проблемы дела не имеют.

Дальше интереснее: стали обнаруживаться пустые логины (то есть без домов) или несоответствие. Стал вести цепочку в ручную и обнаружил, что в единичных случаях ip_group_id из таблицы ip_groups не соответствует id из таблицы users

Есть умы, которые подскажут, где я повернул не правильно, или может в утм-базе есть таблица корректировок? :)

Аватара пользователя
Magnum72
Сообщения: 1947
Зарегистрирован: Чт сен 22, 2005 06:54
Контактная информация:

Re: sql - не правильные связки

Сообщение Magnum72 »

djfox писал(а):Решил я сделать монитор подключений (тупая штука, в старых версиях утм-а была) мелочь, а приятно.

Как водится нашел таблицу с логинами\паролями ip_groups
связал ip_group_id c id из таблицы users
ну и для пущей важности добавил houses

хотя дома к сути проблемы дела не имеют.

Дальше интереснее: стали обнаруживаться пустые логины (то есть без домов) или несоответствие. Стал вести цепочку в ручную и обнаружил, что в единичных случаях ip_group_id из таблицы ip_groups не соответствует id из таблицы users

Есть умы, которые подскажут, где я повернул не правильно, или может в утм-базе есть таблица корректировок? :)
По правильному ип группы связаны и пользователем через три таблицы, то что у тебя что то совпало это случайность... посмотри темы про фрирадиус я там запрос кидал недавно

djfox
Сообщения: 11
Зарегистрирован: Пт авг 24, 2007 11:26

Сообщение djfox »

Да, оказалось то все гораздо проще - через 2 таблицы :)

Спасибо огромное разобрался.
Если вдруг еще кому пригодится брать user_id через базу ip_groups вот выборка:

$sql = "SELECT sl.user_id FROM ip_groups i, iptraffic_service_links isl, service_links sl WHERE i.ip=".ip2long($ip)." AND i.is_deleted='0' AND isl.is_deleted='0' AND sl.is_deleted='0' AND i.ip_group_id=isl.ip_group_id AND isl.id=sl.id";

Ответить