没办法,要为每台客户端电脑产生一个唯一序列号,php完成不了
解决方案 »
- 求一个php函数
- php防止远程提交表单的问题。
- ubuntu中,使用PHP中unlink无法删除文件
- 图片怎么是挨个显示的?header('Content-Type: image/jpeg');readfile($file);
- 谁有含病毒和网页木马的网址啊?发给我吧,谢谢。
- file_get_contents函数能否不报错
- 如何用php上传一个固定的简单文件?
- php session问题!
- 大哥大姐们来帮帮俺~~~急急急急急急---------在线等
- 也问关于mysql_num_rows()一个奇怪的问题,附一个上传是出现的问题
- php发送email
- 高手!!高手!!请进来看一下!!有关复杂邮件的一个功能!!!
如果一定要使用web方式的话,需要通过网页给用户装个activeX控件。可以用activeX控件获取网卡MAC地址,这个是全球唯一的值。只要用户不换网卡,当用户在你那里注册时,通过activeX控件获取用户网卡MAC地址存入数据库。以后每次登陆你的网站时activeX控件再把MAC地址读出来,与数据库里面存的MAC地址比对。
但是传到服务器动不能获取到<?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;
?>
一个mac地址对应一个账号 应该是可以的吧
这个也不行我的电脑根本不让执行activeX
一定要有其它软件配合
你这个系统还要用在广域网上吗?不然的话你这个功能不是没用了吗?
如果是办公用的话,把IP固定了不是很容易实现吗。
如果你能让客户运行那样的一个本地程序,你可以做一个自己的算法,比如对bios信息叠加,等等,参考一下硬件方面的东西,应该可以唯一确定一台电脑(mac地址不可靠,但一般也比较可靠,谁没事天天改mac),然后让这个程序把信息发送到服务器。
js和php都无法获取客户端的mac地址,因为这是不允许的.
除非你开发一个控件,让用户在第一次使用的时候安装,然后用js调用控件获取mac地址.
mac地址很容易改的,不太可靠
不过要获取这些信息,用php貌似非常困难,因为php是在服务器端执行的,挺多获取到服务器的变量,要获取浏览器客户端的信息就比较困难了。 JavaScript的功能貌似也实现不了。 期待JavaScript下一个版本有这个牛逼的功能吧。