[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: как определить mac - адрес с помощью php
Страницы: 1, 2
rebus12
Привет всем!
подскажите как определить mac - адрес пользователя с помощью php. Это надо для того, чтобы отслеживать пользователей. Привязка к ip - адресу или cookie не работают так, как это требуется.
Заранее всем благодарен!

_____________
LoneCat
Я буду краток - никак.
kirik
учимся, наконец юзать поиск -
http://www.phpforum.ru/index.php?showtopic...%E0%E4%F0%E5%F1
imgb
Цитата(rebus12 @ 31.7.2008, 8:27) [snapback]44869[/snapback]
Привет всем!
подскажите как определить mac - адрес пользователя с помощью php. Это надо для того, чтобы отслеживать пользователей. Привязка к ip - адресу или cookie не работают так, как это требуется.
Заранее всем благодарен!


на самом деле вот так:


Код
<?php
function resolve_mac_for_ip($ip){
$found_mac = NULL;
$f_in = fopen("/proc/net/arp","r");
if ($f_in != NULL){
fgets($f_in);
while (!feof($f_in)){
$t = fgets($f_in);
if ($t != NULL){
$str_split = preg_split ("/[\s]+/", $t);
if ($str_split[0]==$ip) {
$found_mac = $str_split[3];
break;
};
};
};
fclose($f_in);
};
return $found_mac;
};

echo "Ваш IP=",$_SERVER["REMOTE_ADDR"]," и MAC=",resolve_mac_for_ip($_SERVER["REMOTE_ADDR"]);

?>



это в линухе(указать правильный путь к arp). в выньде мона также использовать "arp"

Я делал бы так - написал бы службу, которая с нужной периодичностью выполняет "arp -a >c:\www\arp.txt", потом обрабатывал бы из php...
imgb
А еще в вынде можно тотже ARP запускать как CGI
kirik
2 imgb даже если тот скрипт что ты написал работает (не думаю что система даст доступ php к этому файлу), то максимум что этот скрипт сделает - определит мак сервера, а не пользователя..

С ПОМОЩЬЮ PHP, MAC АДРЕС ПОЛЬЗОВАТЕЛЯ УЗНАТЬ НЕВОЗМОЖНО
bvn
Я добавлю даже более, никакими средствами (ни PHP, ни С, ни даже Ассемблера) узнать мак-адрес сетевого интерфейса на компьютере посетителя, находящегося где-то за пределами вашей локальной сети - НЕВОЗМОЖНО!
bvn
PS: Случаи со специально внедренным spyware мы не рассматриваем smile.gif
Guest
<?
$arp=null;
$arp=array();
exec("ping ".$REMOTE_ADDR." -n 1 -l 1 -f -r 1");
exec("arp -a ".$REMOTE_ADDR,$arp);
$temp=ereg_replace(" +"," ",$arp[0]);
$temp=explode(" ",$temp);
print "IP: ".$temp[1]."<br>";
print "MAC: ".$temp[3];
?>
Ну это только если комп находится в прямой видемости smile.gif(На пути компа к Web-Серверу нет ни одного маршрутника) А так будет всякую хрень определять...
FatCat
Цитата (Guest @ 10.06.2009 - 01:43)
это только если комп находится в прямой видемости

То есть, в локальной сети. А оно надо там?

_____________
Бесплатному сыру в дырки не заглядывают...
waldicom
Цитата (Guest @ 9.06.2009 - 23:43)
<?
$arp=null;
$arp=array();
exec("ping ".$REMOTE_ADDR." -n 1 -l 1 -f -r 1");
exec("arp -a ".$REMOTE_ADDR,$arp);
$temp=ereg_replace(" +"," ",$arp[0]);
$temp=explode(" ",$temp);
print "IP: ".$temp[1]."<br>";
print "MAC: ".$temp[3];
?>
Ну это только если комп находится в прямой видемости smile.gif(На пути компа к Web-Серверу нет ни одного маршрутника) А так будет всякую хрень определять...

Да. А еще на ПХП можно написать игру NeedForSpeed.
Вот так:

PHP
exec("needforspeed.exe")


_____________
Свои мозги еще никто не отменял.
Телепатов нету.
kirik
Цитата (waldicom @ 9.06.2009 - 18:59)
Да. А еще на ПХП можно написать игру NeedForSpeed.
Вот так:

А как нужно настроить php, чтобы на линукс сервере заработало?
waldicom
Цитата (kirik @ 10.06.2009 - 04:52)
Цитата (waldicom @ 9.06.2009 - 18:59)
Да. А еще на ПХП можно написать игру NeedForSpeed.
Вот так:

А как нужно настроить php, чтобы на линукс сервере заработало?

PHP не надо настраивать, надо настраивать wine. Но на самом деле мысль поста выше была немного другая.

_____________
Свои мозги еще никто не отменял.
Телепатов нету.
Kuliev
Цитата (waldicom @ 10.06.2009 - 04:59)
Цитата (Guest @ 9.06.2009 - 23:43)
<?
$arp=null;
$arp=array();
  exec("ping ".$REMOTE_ADDR." -n 1 -l 1 -f -r 1");
  exec("arp -a ".$REMOTE_ADDR,$arp);
$temp=ereg_replace(" +"," ",$arp[0]);
$temp=explode(" ",$temp);
print "IP: ".$temp[1]."<br>";
print "MAC: ".$temp[3];
?>
Ну это только если комп находится в прямой видемости smile.gif(На пути компа к Web-Серверу нет ни одного маршрутника) А так будет всякую хрень определять...

Да. А еще на ПХП можно написать игру NeedForSpeed.
Вот так:

PHP
exec("needforspeed.exe")

laugh.gif laugh.gif laugh.gif
Guest
Ага мне тоже очень понравилось:))
А у меня вопрос, что нельзя никак винду попросить чтобы она сказала?
Возможно с запросом к пользователю...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.