php 限制登陆设备,登陆界面限制到只允许一台机器在线-PHP教程,PHP应用
ob_start();
session_start();
class cc{
private $refurl="http://www.abc.com";????????//登陸成功后轉換頁面
private $loginflag=false;????????????????//登陸成功標志
private $loginfile="loginmsg.txt";????????????//信息文件
function setflag($flag){
$this->loginflag=$flag;
}
function check(){
global $_post;
if(file_exists($this->loginfile)&& (time()-filemtime($this->loginfile))<60){//用戶登陸存在而且有效
$info=file($this->loginfile);
$username=trim($info[0]);????//已在線的登陸用戶名
$password=trim($info[1]);????//已在線密碼(可以不保存)
$ip?????=trim($info[2]);????//已在線ip
$sid?????=trim($info[3]);????//已在線port
if(strcmp($_session[loginuser],$username)==0){
if(strcmp($_session[loginpw],$password)==0){
if(strcmp($_server[remote_addr],$ip)==0){
if(strcmp(session_id(),$sid)==0){
$this->setflag(true);
echo "
您的帳戶可以確定是唯一的!
";$cf=fopen($this->loginfile,"a+");
fputs($cf,"\r\na");
fclose($cf);
echo "";
//echo "";
}else{
echo "不允許帳戶在局網上同時登陸.. ".$_server[remote_port];
$this->loginflag=false;
}
}else{
echo "不允許使用帳戶同時登陸..
";
$this->loginflag=false;
}
}else{
echo "密碼錯誤..
";
$this->loginflag=false;
}
}else{
//這里驗證身份如果正確則
echo "帳戶登陸時發生錯誤!用戶名錯誤
";}
}else{
if(isset($_post[loginuser])){
$_session[loginuser]=$_post[loginuser];
$_session[loginpw]=$_post[loginpw];
$fp=fopen($this->loginfile,"w");
$msg=$_post[loginuser]."\r\n".$_post[loginpw]."\r\n".$_server[remote_addr]."\r\n".session_id();;
fputs($fp,$msg);
fclose($fp);
}else{
$outtime=time()-filemtime($this->loginfile)-60;
echo "登陸不存在或您已經超時(".$outtime."秒)…";
}
}
}
function wfrom(){
global $_post;
if(!file_exists($this->loginfile) ||(time()-filemtime($this->loginfile))>60){????????//登陸失敗
echo <<
用戶名: | |
| 密碼: | |
| ? |
loginform;
}else{
echo "已有用戶登陸";
}
}
}
$d=new cc;
$d->check();
$d->wfrom();
?>
總結
以上是生活随笔為你收集整理的php 限制登陆设备,登陆界面限制到只允许一台机器在线-PHP教程,PHP应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: browsersync php,用bro
- 下一篇: php制作标签,ThinkPHP标签制作