Ⅰ php能否得到访问者的硬盘序列号和MAC地址
PHP程序可以获取服务器的硬盘序列号、MAC地址这些数据,原理是调用外部命令检测结果,具体方法与系统的类型有关,但是肯定不可能获取浏览者的信息,因为PHP只在服务器上执行。
你的第二段代码获取MAC值,在Windows是成功的,如果你是需要在UNIX下使用,需要根据你的操作系统类型来修改程序代码。
Ⅱ PHP能否得到访问者的——cpu序列号、硬盘序列号和网卡MAC地址
本身PHP不能
可以利用一些跨权限的浏览器漏洞 通过JS提交
不提供具体方法 只提供思路
1 VBSCRIPT中有一些函数能在客户端获得机器的信息 获得后存储在客户端的一个HIDDEN域中
2 用JS的XMLHTTP组件提交数据到服务器 用一个PHP接收 并保存
Ⅲ PHP简单的解释是什么意思
php是一种语言,编译和运行php语言程序的程序是用c语言写的。在和服务器并行提到PHP时,这个PHP不是语言的意思,而是指运行php语言的环境。在提到某个php页面时,这个php指的是以php为后缀的文件,称为php文件,php文件可以不包含php语言,但是php语言必须写在php文件中。php是一个多含义的词,不能使用教条来解释,而应该根据具体环境来解释。
Ⅳ 求一段PHP记录来访者IP、计算机环境信息。
//获取在线IP
function getonlineip($format=0) {
global $_SGLOBAL;
if(empty($_SGLOBAL['onlineip'])) {
if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {
$onlineip = getenv('REMOTE_ADDR');
} elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {
$onlineip = $_SERVER['REMOTE_ADDR'];
}
preg_match("/[\d\.]{7,15}/", $onlineip, $onlineipmatches);
$_SGLOBAL['onlineip'] = $onlineipmatches[0] ? $onlineipmatches[0] : 'unknown';
}
if($format) {
$ips = explode('.', $_SGLOBAL['onlineip']);
for($i=0;$i<3;$i++) {
$ips[$i] = intval($ips[$i]);
}
return sprintf('%03d%03d%03d', $ips[0], $ips[1], $ips[2]);
} else {
return $_SGLOBAL['onlineip'];
}
}
Ⅳ php 如何获取唯一身份访问者,根据每一台电脑来获得唯一的标识
需要准备的材料分别是:电脑、php编辑器、浏览器。
1、首先,打开php编辑器,新建php文件,例如:index.php。
Ⅵ php,js等,能通过浏览器取得访问者的mac地址吗还能取得客户的哪些信息
能!如php获取mac地址:<?php
@exec("ipconfig /all",$array);
for($Tmpa;$Tmpa<count($array);$Tmpa++){
if(eregi("Physical",$array[$Tmpa])){
$mac=explode(":",$array[$Tmpa]);
echo $mac[1];
}
}
?>
还能获取ip,访问端口,浏览当前页面用户的主机名等信息。至于js我不是很了解,但是也是可以获取和php差不多的信息。
具体的php的实现方法可以看:http://www.php100.com/html/webkaifa/PHP/PHP/2009/1027/3446.html
Ⅶ 请写一php 要求: (1)创建一个名为username 的cookie来包含访问者的信息:值是表
<?php //自己调试吧
if('123456'==$_POST['username'] && 'admin'== $_POST['username']){
setcookie('username',$_POST['username'],time()-3600);
setcookie('isLogin',1,time()-3600);//实际上没必要只要判断username 存在否即可
?>
<META HTTP-EQUIV="refresh" CONTENT="1;url=index.html">
<?php
}else{
setcookie('username');
setcookie('isLogin');
}
?>
Ⅷ php怎么记录访问者ip并生成日志
php获取访问者IP地址汇总
在很我的时候我们需要得到用户的真实IP地址,例如,日志记录,
地理定位
,将用户信息,
网站数据分析
等,其实获取IP地址很简单$_SERVER[\'REMOTE_ADDR\']就可以了。下面我们就来给大家汇总一下常用的几种获取IP地址的方法。
//方法1:
$ip
=
$_SERVER["REMOTE_ADDR"];
echo
$ip;
//方法2:
代码如下:
$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;
//方法3:
function
getRealIp()
{
$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
getRealIp();
//方法4:
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
;
//方法5:
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;
//方法6:
print
"您的IP地址是:";
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$cip
=
$_SERVER["HTTP_CLIENT_IP"];
}
elseif(!empty($_SERVER["HTTP_X_FORWARDED_FOR"])){
$cip
=
$_SERVER["HTTP_X_FORWARDED_FOR"];
}
elseif(!empty($_SERVER["REMOTE_ADDR"])){
$cip
=
$_SERVER["REMOTE_ADDR"];
}
else{
$cip
=
"无法获取!";
}
print
$cip;
保存TEXT中
?php
$ip
=
$_SERVER['REMOTE_ADDR'];
$time
=
gmdate("H:i:s",time()+8*3600);
$file
=
"123.txt"
;
$fp=fopen
("123.txt","a")
;
$txt=
"$ip"."----"."$time"."\n";
fputs($fp,$txt);
?
Ⅸ 我建了个网站,你来访问我的网站,我怎么知道你是通过哪个浏览器访问的
浏览器访问的时候,你可以在你的网页端截获一个refer信息的,里面有访问者的ip、从哪个网页来的,以及浏览器信息。
在php下是通过这样的方法得到访问者信息的,但是我没有在jsp下编过程,所以你可以通过类似的关键字在jsp的指令里找找看,这个是通用的协议规范。
------------------------
附,php里相关指令:
HTTP_USER_AGENT:访问者浏览器
HTTP_CLIENT_IP:访问者IP
HTTP_X_FORWARDED_FOR
REMOTE_ADDR:访问者IP
Ⅹ php怎么获取访问者的IP 我找的代码是获取服务端的还是客户端的啊
方法一:
<?php
function GetIP(){
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$cip = $_SERVER["HTTP_CLIENT_IP"];
}
elseif(!empty($_SERVER["HTTP_X_FORWARDED_FOR"])){
$cip = $_SERVER["HTTP_X_FORWARDED_FOR"];
}
elseif(!empty($_SERVER["REMOTE_ADDR"])){
$cip = $_SERVER["REMOTE_ADDR"];
}
else{
$cip = "无法获取!";
}
return $cip;
}
echo GetIP();
?>
方法二:
<?php
error_reporting (E_ERROR | E_WARNING | E_PARSE);
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;
?>
方法三:
<?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
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;
?>