さまざまな Baidu とさまざまな検索の結果、PHP コードはサーバーの MAC のみを取得でき、クライアントの MAC は取得できません。IP アドレスはクライアントの外部ネットワーク IP のみを取得でき、実際のイントラネット IP (192.168) は取得できません。 .1.***)
そこで、js メソッドに目を向け、オンラインで見つけたプログラムをコピーしました。 誰もが次の方法を使用しているようですが、2 つの致命的な問題があります。
1. 生成された HTML ファイルを直接実行して MAC アドレスと IP アドレスを取得できますが、IE ブラウザーでのみ実行でき、ActiveX コントロールを実行するにはユーザーの許可が必要です。Google、Firefox、Safari はまったく応答できません。 。
2. php 内に js コードを埋め込むと機能しません。ローカルの localhost テストでは常にエラー (認識されない、*** が空であるなど) が報告され、サーバーへのアップロードも当然機能しません。
最初の問題は解決できません。localhost を使用して php ページをデバッグできた人はいるでしょうか。
WMI スクリプト HTML <スクリプト言語="JScript" イベント="OnCompleted(hResult,pErrorObject, pAsyncContext)"
for="foo">
document.forms[0].txtMACAddr.value=unescape(MACAddr); 0].txtIPAddr.value=unescape(IPAddr);
document.forms[0].txtDNSName.value=unescape(sDNSName);
スクリプト言語="JScript" イベント="OnObjectReady(objObject,objAsyncContext)" for="foo">
if(objObject.IPEnabled != null && objObject.IPEnabled != "未定義" && objObject.IPEnabled == true)
{
if(objObject.MACAddress != null && objObject.MACAddress != "未定義")
MACAddr = objObject.MACAddress;
if(objObject.IPEnabled && objObject.IPAddress(0) != null && objObject.IPAddress(0) != "未定義")
IPAddr = objObject.IPAddress(0);
if(objObject.DNSHostName != null && objObject.DNSHostName != "未定義")
sDNSName = objObject.DNSHostName
}