>  기사  >  백엔드 개발  >  求PHP 网站获取客户端MAC地址的方案

求PHP 网站获取客户端MAC地址的方案

WBOY
WBOY원래의
2016-06-23 14:24:46862검색

现在有个PHP网站,想获得访问客户的MAC地址,哪位大拿有什么好的解决方案,请告诉小弟,谢谢了。


回复讨论(解决方案)

………………

这个是不可能的。

你所能获取到的只能是客户端的IP地址、浏览器信息。

MAC地址肯定获取不到,除非你让客户端安控件……

无此方案

这个的确没有办法

除非执行段bat或者shell脚本获取  

用exec 执行命令 试试

让用户自己输入,这是目前最好的办法

你要有方法了,记得贴出来哦

define ('EXEC_TMP_DIR', 'C:\WINDOWS\Temp');

function windExec($cmd,$mode=''){
   
    $cmdline = "cmd /C $cmd";
    if ($mode=='FG'){
        $outputfile = EXEC_TMP_DIR."\\".time() . ".txt";
        $cmdline .= " > $outputfile";
        $m = true;
    }
    else $m = false;

   
    $WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run($cmdline, 0, $m);

    if ($outputfile){
        $retStr = file_get_contents($outputfile);
        unlink($outputfile);
    }
    else $retStr = "";

    return $retStr;

}

echo windExec('ipconfig/all','FG');

这window XP可以,我已经做了测试.在我的机子上面可以..我觉得已改window 都可以,只是temp文件的位置可能不一样

define ('EXEC_TMP_DIR', 'C:\WINDOWS\Temp');

function windExec($cmd,$mode=''){
   
    $cmdline = "cmd /C $cmd";
    if ($mode=='FG'){
        $outputfile = EXEC_TMP_DIR."\\".time() . ".txt";
        $cmdline .= " > $outputfile";
        $m = true;
    }
    else $m = false;

   
    $WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run($cmdline, 0, $m);

    if ($outputfile){
        $retStr = file_get_contents($outputfile);
        unlink($outputfile);
    }
    else $retStr = "";

    return $retStr;

}

echo windExec('ipconfig/all','FG');
在我的机子上面可以,估计window都可以,只是要改哈temp文件的位置.

define ('EXEC_TMP_DIR', 'C:\WINDOWS\Temp');

function windExec($cmd,$mode=''){
   
    $cmdline = "cmd /C $cmd";
    if ($mode=='FG'){
        $outputfile = EXEC_TMP_DIR."\\".time() . ".txt";
……

... ... 

基础概念
php是运行于服务器端的.

引用 9 楼  的回复:

define ('EXEC_TMP_DIR', 'C:\WINDOWS\Temp');

function windExec($cmd,$mode=''){

$cmdline = "cmd /C $cmd";
if ($mode=='FG'){
$outputfile = EXEC_TMP_DIR."\\".time() . ".txt";
……
……  这个的确只能在服务端.客户端必须要控件

一个方案是 自己实现个服务器的的模块 和一个php模块获取mac

按时按照原理 php一般是cgi fastcgi或者module

所以这个得服务器来做(iis apache 或者ngnix等)
然后这个数据得传给php 
所以还得做个php模块接收和处理这个


貌似不简单啊

这个真的很难哦

不知道千方百计的获取 MAC 有什么用处?
须知 MAC 是不能跨网的,即只要穿过路由器就无效了

js调用wmi可以获取mac


请输入你的MAC地址:




可以这样~_~

不知道千方百计的获取 MAC 有什么用处?
须知 MAC 是不能跨网的,即只要穿过路由器就无效了

而且MAC地址也是可以改来改去的...

不知道楼主想干嘛?获得了mac难道比获取ip有用吗?

客户端获取主动上传,别无他法。

同意楼上,

之前有人说用IE控件可以

之前有人说用IE控件可以

现在还有什么人去装"获取MAC地址给我"控件?
做一个这个还不如开发个客户端呢,集成浏览器的功能。

@exec("ipconfig /all",$array);
for($Tmpa;$Tmpa if(eregi("Physical",$array[$Tmpa])){
$mac=explode(":",$array[$Tmpa]);
         echo $mac[1];
       }
}

http://www.php100.com/html/webkaifa/PHP/PHPyingyong/2011/0904/9000.html
我用这个获取到了

http://www.php100.com/html/webkaifa/PHP/PHPyingyong/2011/0904/9000.html
我用这个获取到了
这个不可行 只能获取服务器端的客户端的不行

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.