❶ php或者js獲取客戶端網卡IP地址
|function get_real_ip(){
$ip=false;
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
for ($i = 0; $i < count($ips); $i++) {
if (!eregi ("^(10|172\.16|192\.168)\.", $ips[$i])) {
$ip = $ips[$i];
break;
}
}
}
return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}
調用內方式容get_real_ip()
❷ 如何用js或者jquery獲取客戶端的IP地址
很遺憾,js本身無法獲取用戶IP
但是可以結合伺服器程序來實現這個功能
以jquery和PHP為例:
js文件:
$.get('getip.php', function(xhr) {
alert(xhr['ip']);
}, 'json');
//使用ajax方式向getip.php發送請求,設置接收格式段凳備為粗橋json
php文件getip.php :
<?php
echo json_encode(array(
'ip' => $_SERVER['REMOTE_ADDR']
));
/握毀/返回json格式的IP地址
❸ jsp中request.getHeader()獲取客戶端的各種信息,那php中什麼方法來獲取
伺服器變數 $_SERVER 詳解:
1、$_SESSION['PHP_SELF'] -- 獲取當前正在執行腳本的文件名
2、$_SERVER['SERVER_PROTOCOL'] -- 請求頁面時通信協議的名稱和版本。例如,「HTTP/1.0」。
3、$_SERVER['REQUEST_TIME'] -- 請求開始時的時間戳。從 PHP 5.1.0 起有效。和time函數效果一樣。
4、$_SERVER['argv'] -- 傳遞給該腳本的參數。我試了下,get方法可以得到$_SERVER['argv'][0];post方法無法給他賦值。
5、$_SERVER['SERVER_NAME'] -- 返回當前主機名。
6、$_SERVER['SERVER_SOFTWARE'] -- 伺服器標識的字串,在響應請求時的頭信息中給出。 如Microsoft-IIS/6.0
7、$_SERVER['REQUEST_METHOD'] -- 訪問頁面時的請求方法。例如:「GET」、「HEAD」,「POST」,「PUT」。
8、$_SERVER['QUERY_STRING'] -- 查詢(query)的字元串(URL 中第一個問號 ? 之後的內容)。
9、$_SERVER['DOCUMENT_ROOT'] -- 當前運行腳本所在的文檔根目錄。在伺服器配置文件中定義。 如E:\server
10、$_SERVER['HTTP_ACCEPT'] -- 當前請求的 Accept: 頭信息的內容。
11、$_SERVER['HTTP_ACCEPT_CHARSET'] -- 當前請求的 Accept-Charset: 頭信息的內容。例如:「iso-8859-1,*,utf-8」。
12、$_SERVER['HTTP_ACCEPT_ENCODING'] -- 當前請求的 Accept-Encoding: 頭信息的內容。例如:「gzip」。
13、$_SERVER['HTTP_ACCEPT_LANGUAGE'] -- 當前請求的 Accept-Language: 頭信息的內容。例如:「en」。
14、$_SERVER['HTTP_CONNECTION'] -- 當前請求的 Connection: 頭信息的內容。例如:「Keep-Alive」。
15、$_SERVER['HTTP_HOST'] -- 當前請求的 Host: 頭信息的內容。
16、$_SERVER['HTTP_REFERER'] -- 鏈接到當前頁面的前一頁面的 URL 地址。
17、$_SERVER['HTTP_USER_AGENT'] -- 返回用戶使用的瀏覽器信息。也可以使用 get_browser() 得到此信息。
18、$_SERVER['HTTPS'] -- 如果通過https訪問,則被設為一個非空的值,否則返回off.
19、$_SERVER['REMOTE_ADDR'] -- 正在瀏覽當前頁面用戶的 IP 地址。
20、$_SERVER['REMOTE_HOST'] -- 正在瀏覽當前頁面用戶的主機名。反向域名解析基於該用戶的 REMOTE_ADDR。如本地測試返回127.0.0.1
21、$_SERVER['REMOTE_PORT'] -- 用戶連接到伺服器時所使用的埠。我在本機測試沒通過,不知道什麼原因。
22、$_SERVER['SCRIPT_FILENAME'] -- 當前執行腳本的絕對路徑名。如返回E:\server\index.php
23、$_SERVER['SERVER_ADMIN'] -- 該值指明了 Apache 伺服器配置文件中的 SERVER_ADMIN 參數。如果腳本運行在一個虛擬主機上,則該值是那個虛擬主機的值
24、$_SERVER['SERVER_PORT'] -- 伺服器所使用的埠。默認為「80」。如果使用 SSL 安全連接,則這個值為用戶設置的 HTTP 埠。
25、$_SERVER['SERVER_SIGNATURE'] -- 包含伺服器版本和虛擬主機名的字元串。
26、$_SERVER['PATH_TRANSLATED'] -- 當前腳本所在文件系統(不是文檔根目錄)的基本路徑。這是在伺服器進行虛擬到真實路徑的映像後的結果。 Apache 2 用 戶可以使用 httpd.conf 中的 AcceptPathInfo On 來定義 PATH_INFO。
27、$_SERVER['SCRIPT_NAME'] -- 包含當前腳本的路徑。這在頁面需要指向自己時非常有用。__FILE__ 包含當前文件的絕對路徑和文件名(例如包含文件)。
28、$_SERVER['REQUEST_URI'] -- 訪問此頁面所需的 URI。例如,「/index.html」。
29、$_SERVER['PHP_AUTH_DIGEST'] -- 當作為 Apache 模塊運行時,進行 HTTP Digest 認證的過程中,此變數被設置成客戶端發送的「Authorization」HTTP 頭內容(以便作進一步的認證操作)。
30、$_SERVER['PHP_AUTH_USER']-- 當 PHP 運行在 Apache 或 IIS(PHP 5 是 ISAPI)模塊方式下,並且正在使用 HTTP 認證功能,這個變數便是用戶輸入的用戶名。
31、$_SERVER['PHP_AUTH_PW'] -- 當 PHP 運行在 Apache 或 IIS(PHP 5 是 ISAPI)模塊方式下,並且正在使用 HTTP 認證功能,這個變數便是用戶輸入的密碼。
32、$_SERVER['AUTH_TYPE']--當 PHP 運行在 Apache 模塊方式下,並且正在使用 HTTP 認證功能,這個變數便是認證的類型。
❹ PHP如何調用JS函數並獲取其返回的數據
人家問的是PHP調用JS函數。。。樓主,我可以很負責的告訴你,這是不可能的版。PHP是在伺服器端運行的腳權本,而JS是在瀏覽器運行的腳本,你要調用可以,直接echo個script就可以,但是獲取返回值是不可能的,只有讓JS把返回值通過AJAX發送給PHP才可以。
❺ 求 PHP 或 jS 獲取客戶端真是IP的方法
有幾種方法,不過都必須要求對方運行ActiveX控制項,因此對方的IE安全設置必須較低,否則無法運行,如歲旅果用ASP,PHP,JSP,ASP.NET可以非常輕松乎遲凳地實現,而且沒有此限制。
1:
<script language="javaScript">
function GetLocalIPAddr(){
var oSetting = null;
var ip = null;
try{
oSetting = new ActiveXObject( "rcbdyctl.Setting" );
ip = oSetting.GetIPAddress;
alert(ip);
if (ip.length == 0){
return "沒有連旦慧接到Internet";
}
oSetting = null;
}catch(e){
return ip;
}
return ip;
}
alert(GetLocalIPAddr())
</script>
2:
<script>
function getIP(bat,txt){
var fso=new ActiveXObject("Scripting.FileSystemObject")
var f=fso.createTextFile(bat,1);
f.writeLine("ipconfig>"+txt);
f.Close();
var wsh=new ActiveXObject("wscript.shell");
wsh.run(bat)
setTimeout(display,1000)
function display(){
var f=fso.openTextFile(txt);
alert(f.ReadAll());
f.Close();
fso.DeleteFile(bat);
fso.DeleteFile(txt);
}
}
getIP("qswhIP.bat","qswhIP.txt")
</script>
3:
<object classid=clsid:{248DD896-BB45-11CF-9ABC-0080C7E7B78D}
name=winsock></object>
<script>try{alert(winsock.localIP)}catch(e){alert("沒安裝該控制項")}
</script>
❻ php如何獲取到客戶端mac的地址
MAC地址是不可以的,瀏覽器就攔擊了,那個只是局域陵源賀網內使用的。也就是許多通過路由器的廣域網用戶,根本就不把MAC地址傳給WEB伺服器,PHP程序是不可能獲得的。
你尺派要限制用戶裂游,只有使用證書,登錄賬戶等方法實現。
❼ 怎麼用程序(php或Js)獲取用戶使用的dns 然後獲取用戶端對某個域名的解析ip
客戶端對某個域名的解析??
這是在收集客戶端的信息,
web好像沒這么大的許可權,
如果你需要這么做,
估計插件可以幫助你,
或者看下微軟的ACTIVE行不行。
❽ 如何用js或者jquery獲取客戶端的IP地址
1,js取得IP地址的方法一
<script src="http://pv.sohu.com/cityjson?ie=utf-8"></script>
<script type="text/<A class=infotextkey href="http://www.jb51.net/" target=_blank>javascript</A>">
document.write(returnCitySN["cip"]+','+returnCitySN["cname"])
</script>
2,js取得IP地址的方法二
<script language="javascript" type="text/javascript" src="http://fw.qq.com/ipaddress">
</script>
<script>document.write("你的IP是:"+IPData[0]+",來自:"+IPData[2]);
</script>
3,js取得ip地址的方法三,騰訊IP,轉UTF-8:
<script type="text/javascript" src="http://fw.qq.com/ipaddress" charset="gb2312"></script>
$(document).ready(function() {
$("#ip").val(IPData[0]);
$("#add").val(IPData[2]);
})
❾ php怎麼獲取手機客戶端ip
php獲取客戶端ip地址方法總結
用php獲取客戶端ip地址的方法,具體代碼如下:
?php
$iipp=$_server["remote_addr"];
echo
$iipp;
?
///基讓////////////////////////////////////////////
?php
$user_ip
=
($_server["http_via"])
?
$_server["http_x_forwarded_for"]
:
$_server["remote_addr"];
$user_ip
=
($user_ip)
?
$user_ip
:
$_server["remote_addr"];
echo
$user_ip;
?
///////////////////////////////////////////////
?php
function
get_real_ip(){
$ip=false;
if(!empty($_server["http_client_ip"])){
$ip
=
$_server["http_client_ip"];
}
if
(!empty($_server['http_x_forwarded_for']))
{
$ips
=
explode
(",
",
$_server['http_x_forwarded_for']);
if
($ip)
{
array_unshift($ips,
$ip);
$ip
=
false;
}
for
($i
=
0;
$i
<
count($ips);
$i++)
{
if
(!eregi
("搏稿局^(10|172.16|192.168).",
$ips[$i]))
{
$ip
=
$ips[$i];
break;
}
}
}
return
($ip
?
$ip
:
$_server['remote_addr']);
}
echo
get_real_ip();
?
///////////////////////////////////////////////
php獲取ip的演算法:
?php
if
($http_server_vars["http_x_forwarded_for"])
{
$ip
=
$http_server_vars["http_x_forwarded_for"];
}
elseif
($http_server_vars["http_client_ip"])
{
$ip
=
$http_server_vars["http_client_ip"];
}
elseif
($http_server_vars["remote_addr"])
{
$ip
=
$http_server_vars["remote_addr"];
}
elseif
(getenv("http_x_forwarded_for"))
{
$ip
=
getenv("http_x_forwarded_for");
}
elseif
(getenv("http_client_ip"))
{
$ip
=
getenv("http_client_ip");
}
elseif
(getenv("remote_addr"))
{
$ip
=
getenv("remote_addr");
}
else
{
$ip
=
"敬鍵unknown";
}
echo
"你的ip:".$ip
;
?
///////////////////////////////////////////////
?php
if(getenv('http_client_ip'))
{
$onlineip
=
getenv('http_client_ip');
}
elseif(getenv('http_x_forwarded_for'))
{
$onlineip
=
getenv('http_x_forwarded_for');
}
elseif(getenv('remote_addr'))
{
$onlineip
=
getenv('remote_addr');
}
else
{
$onlineip
=
$http_server_vars['remote_addr'];
}
echo
$onlineip;
?
❿ JS怎麼獲取客戶端計算機硬體信息
先通過new ActiveXObject ("WbemScripting.SWbemLocator"); 訪問到WbemScripting對象。
通過locator.ConnectServer(".");連接我們本地電腦(.代表本地電腦,當然也可以訪問其他計算機)。
通過service.ExecQuery("SELECT * FROM Win32_Processor")這個類似sql的語句(其實系統信息也是存儲在計算中一個類似資料庫的文件中)獲取我們需要的對象的記錄集。
通過new Enumerator來創建一個可枚舉的對象,下面就可以遍歷取信息了。
注意:運行的前提是要修改瀏覽器安全設置,「允許對未標記為可安全執行的ActiveX腳本的運行」。