Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

MAC IP and PHP

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Веб-программинг] >> MAC IP and PHP
Имя
Сообщение << Старые топики   Новые топики >>
MAC IP and PHP - 2006-12-29 16:03:03.340000   
_KаShpErovskiI_

Сообщений: 30
Оценки: 0
Присоединился: 2006-12-29 15:40:44.210000
Всем доброе время суток !!!!
 
Я тут над одним проектом работаю и мне надо организовать что то вроди уникального логина…….
 
Я подумал что ето так же можно сделать через MAC IP но …. проблема как поймать MAC IP с помощю ПХП ?????
 
На форумах не где не нашол нечего интересного :(
 
Как ето можно решить ????
Зарание спосибо и С Наступающим !!!!
Post #: 1
RE: MAC IP and PHP - 2006-12-30 09:13:40.316666   
Lex_Voodoo

Сообщений: 7328
Оценки: 0
Присоединился: 2004-12-07 13:55:12
MAC ты средствами PHP не узнаешь.
1. Использовать primary key autoincrement в MySQL, он даст 100% уникальность.
2. Использовать md5(primary key autoincrement в MySQL) - коллизий на твоём веку точно не будет :)
3. Использовать ф-ю, генерирующую уникальный логин, например так:

print "Уникальный логин: " . next_unique_login(); function next_unique_login() { do { $login = gen_random_login(); } while(is_login_exists($login)); return $login; } function gen_random_login() { // возвращает псевдослучайную строку, например: return substr(strtolower(md5(microtime())), 10); } function is_login_exists($login) { // возвращает true, если такой логин уже существует return false; }Если выберешь последний способ, не забудь либо сохранять новый логин сразу после получения, либо добавить ещё одну проверку во время регистрации - чтобы между вызовом next_unique_login() и сохранением уникального логина в базу кто-нибудь не вызвал её ещё раз.
Post #: 2
RE: MAC IP and PHP - 2007-01-10 18:03:18.636666   
_KаShpErovskiI_

Сообщений: 30
Оценки: 0
Присоединился: 2006-12-29 15:40:44.210000
Спасибо за совет это была моя 2-ая проблема :)
 
А первая была в том что мне надо было обеспечить уникальность входа т.е. исключить одновременный вход в систему под одним и тем же логином.
 
Я это решил следующим образом:
В таблице где сидят все аккаунты я создал еще одно поле типа bool в скрипте дал проверку если Stutus = 1 значит user уже online если 0 то добро пожаловать :)
[blockquote] [/blockquote]
Post #: 3
RE: MAC IP and PHP - 2007-01-11 07:46:37.623333   
Lex_Voodoo

Сообщений: 7328
Оценки: 0
Присоединился: 2004-12-07 13:55:12
А что будет, если юзер зашёл, но у него отрубили свет, и на кнопочку "выход" он не успел нажать?
Post #: 4
RE: MAC IP and PHP - 2007-01-12 00:16:37.830000   
ZneP

Сообщений: 910
Оценки: 0
Присоединился: 2006-08-21 16:11:47
лучше эту проверку через сессии решить. Если сессия на юзера сделана, то гуляй, если нет, то добро пожаловать, ИМХО тогда и вырубление света не будет мешать.
Post #: 5
RE: MAC IP and PHP - 2007-01-12 08:50:14.290000   
Lex_Voodoo

Сообщений: 7328
Оценки: 0
Присоединился: 2004-12-07 13:55:12
Вариантов решения много, но у каждого есть свои недостатки. Надо точно знать, что конкретно надо _KаShpErovskiI_, на физическом, а не программном уровне, т.к. на программном он ИМХО выбрал неверный путь.

Касательно сессий - как они решат проблему со светом?
Я залогинился, через минуту свет отрубился. Что прикажете делать?
quote:

Если сессия на юзера сделана, то гуляй, если нет, то добро пожаловать
Так в этом случае будет сделана на меня сессия, или нет? Или мне ждать 24 минуты, прежде чем я снова смогу залогиниться?
К тому же, дефолтная сессия ну никак не решает проблемы с одновременным входом нескольких юзеров. Опять же, как ты собирался узнавать, сделана на этого юзера сессия, или нет?
Post #: 6
RE: MAC IP and PHP - 2007-01-12 15:55:51.663333   
_KаShpErovskiI_

Сообщений: 30
Оценки: 0
Присоединился: 2006-12-29 15:40:44.210000
Дело в том что жизнь сессии ровна 5-и минутам. В принципе эта позиция решает вопрос света.
Post #: 7
RE: MAC IP and PHP - 2007-01-12 16:28:57.736666   
Lex_Voodoo

Сообщений: 7328
Оценки: 0
Присоединился: 2004-12-07 13:55:12
По умолчанию таймаут сессии равен 24 минутам. Настроить, конечно, можно на сколько угодно, но в любом случае необходимо где-то хранить связку "логин + время последнего посещения", одним полем типа bool тут не обойдёшься. Возможно, стоит добавить ещё и проверку по IP, чтобы исключить возможность входа с другого компьютера.
Post #: 8
RE: MAC IP and PHP - 2007-01-13 02:13:50.720000   
_KаShpErovskiI_

Сообщений: 30
Оценки: 0
Присоединился: 2006-12-29 15:40:44.210000
Я с тобой полностью согласен :)
 
вобщето между нами говоря
 
$ip = getenv("REMOTE_ADDR");
   $browser = getenv("HTTP_USER_AGENT");
 
это тоже хватило бы я так думаю

 
Post #: 9
Страниц:  [1]
Все форумы >> [Веб-программинг] >> MAC IP and PHP







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.