求PHP 网站获取客户端MAC地址的议案
程序员文章站
2022-05-26 14:06:19
...
求PHP 网站获取客户端MAC地址的方案
现在有个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文件的位置.
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
一个方案是 自己实现个服务器的的模块 和一个php模块获取mac
按时按照原理 php一般是cgi fastcgi或者module
所以这个得服务器来做(iis apache 或者ngnix等)
然后这个数据得传给php
所以还得做个php模块接收和处理这个
貌似不简单啊
------解决方案--------------------
这个真的很难哦
------解决方案--------------------
不知道千方百计的获取 MAC 有什么用处?
须知 MAC 是不能跨网的,即只要穿过路由器就无效了
------解决方案--------------------
现在有个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文件的位置.
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
一个方案是 自己实现个服务器的的模块 和一个php模块获取mac
按时按照原理 php一般是cgi fastcgi或者module
所以这个得服务器来做(iis apache 或者ngnix等)
然后这个数据得传给php
所以还得做个php模块接收和处理这个
貌似不简单啊
------解决方案--------------------
这个真的很难哦
------解决方案--------------------
不知道千方百计的获取 MAC 有什么用处?
须知 MAC 是不能跨网的,即只要穿过路由器就无效了
------解决方案--------------------
相关文章
相关视频