获取服务端网卡的MAC地址倒是能搞出来, 客户端的呢?

解决方案 »

  1.   

    php 是服务端语言,用它来获取 client mac 地址,怕是没办法。
      

  2.   

    也许使用javascript可以,但是要权限
      

  3.   

    <?php
    /**
            获取机器网卡的物理(MAC)地址 
            wwa  $Exp 
    **/
    class GetMacAddr
    {
            var $return_array = array(); // 返回带有MAC地址的字串数组
            var $mac_addr;
            
            function GetMacAddr($os_type)
            {
                    switch ( strtolower($os_type) )
                    {
                            case "linux":
                                    $this->forLinux();
                                    break;
                            case "solaris":
                                    break;
                            case "unix":
                                    break;
                            case "aix":
                                    break;
                            default:
                                    $this->forWindows();
                                    break;
                    }
                    
                    $temp_array = array();
                    foreach ( $this->return_array as $value )
                    {
                            if ( preg_match( "/[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f]/i", $value, $temp_array ) )
                            {
                                    $this->mac_addr = $temp_array[0];
                                    break;
                            }
                    }
                    unset($temp_array);
                    return $this->mac_addr;
            }        function forWindows()
            {
                    @exec("ipconfig /all", $this->return_array);
                    if ( $this->return_array )
                            return $this->return_array;
                    else{
                            $ipconfig = $_SERVER["WINDIR"]."\system32\ipconfig.exe";
                            if ( is_file($ipconfig) )
                                    @exec($ipconfig." /all", $this->return_array);
                            else
                                    @exec($_SERVER["WINDIR"]."\system\ipconfig.exe /all", $this->return_array);
                            return $this->return_array;
                    }
            }        function forLinux()
            {
                    @exec("ifconfig -a", $this->return_array);
                    return $this->return_array;
            }
    }
    ?>
    <?
    $mac = new GetMacAddr(PHP_OS);
    echo $mac->mac_addr;
    ?>
      

  4.   

    楼上只能获取服务器网卡MAC。
      

  5.   

    用javascript是可以的获取的
      

  6.   

    不能,只能获取的服务器的mac地址
      

  7.   

    感觉好象也得需要插件才行。但好象PHP没有什么插件之类的东西
      

  8.   

    php支持socket啊 不过网页编程应该得不到