<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            php語言

            如何在php與js中分別獲取客戶度mac地址

            時間:2025-05-16 09:08:43 php語言 我要投稿
            • 相關推薦

            如何在php與js中分別獲取客戶度mac地址

              導語:如何在php與js中分別獲取客戶度mac地址的呢?學代碼的你懂嗎?下面的是百分網小編為大家搜集的相關資料,供大家參考。

            如何在php與js中分別獲取客戶度mac地址

              代碼如下:

              <?php

              class MacAddr

              {

              public $returnArray = array();

              public $macAddr;

              function __contruct($os_type=null){

              if(is_null($os_type)) $os_type = PHP_OS;

              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->returnArray 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->macAddr = $temp_array[0];

              break;

              }

              }

              unset($temp_array);

              return $this->macAddr;

              }

              function forWindows(){

              @exec("ipconfig /all", $this->returnArray);

              if($this->returnArray)

              return $this->returnArray;

              else{

              $ipconfig = $_SERVER["WINDIR"]."system32ipconfig.exe";

              if (is_file($ipconfig))

              @exec($ipconfig." /all", $this->returnArray);

              else

              @exec($_SERVER["WINDIR"]."systemipconfig.exe /all", $this->returnArray);

              return $this->returnArray;

              }

              }

              function forLinux(){

              @exec("ifconfig -a", $this->returnArray);

              return $this->returnArray;

              }

              }

              $mac = new MacAddr(PHP_OS);

              echo $mac->macAddr;

              echo "<br />";

              // 獲取客戶端

              // linux

              $command = "arp -a {$_SERVER['REMOTE_ADDR']}";

              echo $command;

              echo "<br />";

              $result=`{$command}`;

              // windows

              $command = "nbtstat -a {$_SERVER['REMOTE_ADDR']}";

              echo $command;

              echo "<br />";

              $result=`{$command}`;

              print_r($result);

              ?>

              獲取服務端的邏輯沒什么大問題,可能會存在權限問題。

              獲取客戶端的時候,可能會比較慢,arp/nbstat命令執行會比較慢。

              復制代碼 代碼如下:

              <script language="JScript" event="OnCompleted(hResult,pErrorObject, pAsyncContext)" for="foo">

              document.forms[0].lbMacAddr.value=unescape(MACAddr);

              </script>

              <script language="JScript" event="OnObjectReady(objObject,objAsyncContext)" for="foo">

              if(objObject.IPEnabled != null && objObject.IPEnabled != "undefined" && objObject.IPEnabled == true && objObject.MACAddress != null && objObject.MACAddress != "undefined") MACAddr = objObject.MACAddress;

              </script>

              <object id="locator" classid="CLSID:76A64158-CB41-11D1-8B02-00600806D9B6"></object>

              <object id="foo" classid="CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223"></object>

              <script language="JScript">

              var service = locator.ConnectServer();

              var MACAddr ;

              var IPAddr ;

              var DomainAddr;

              var sDNSName;

              service.Security_.ImpersonationLevel=3;

              service.InstancesOfAsync(foo, 'Win32_NetworkAdapterConfiguration');

              </script>

              <form><input type="text" id='lbMacAddr' name='lbMacAddr' /></form>

              只適用于IE瀏覽器,而且會有告警提示,挺遺憾的。

            【如何在php與js中分別獲取客戶度mac地址】相關文章:

            php獲取當前url地址的方法10-16

            php獲取IP物理地址的方法10-10

            PHP獲取真實的客戶IP的方法09-01

            php與js的區別07-19

            HTML中利用js調用php的內容09-18

            php怎么引入js08-31

            IP地址和MAC地址分類08-10

            PHP根據IP地址獲取所在城市具體實現07-16

            php根據IP地址獲取當前地理位置接口05-18

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看