这里假设你的主页是index.php,登录前页面是login.php,用户名user1的密码为123。当然,给你提供的是PHP方法,所以你必须配置好了PHP并且每页都必须是PHP。
创新互联公司主营大连网站建设的网络公司,主营网站建设方案,重庆APP软件开发,大连h5小程序设计搭建,大连网站营销推广欢迎大连等地区企业咨询
每个需要登录后查看的页面的开始写(一定要最开始,前面不能有任何字符包括回车或者空格)
?php session_start();if(!isset($_SESSION['pass']))header("Location: login.php");?
在登录页面最开始写:
?php session_start();$usr=array('user1'='123','user2'='456');if(isset[$_POST['usr']]isset[$_POST['pwd']]isset[$usr[$_POST['usr']]]$_POST['pwd']==$usr[$_POST['usr']])$_SESSION['pass']=1;if(isset($_SESSION['pass']))header("Location: index.php");?
登录页内容里必须有form元素具有method属性值为post。
form元素里必须具有两个input具有name属性值分别为usr和pwd,最后一个按钮建议用input type=submit。例如:
form method="post"
Name: input name="usr"/br/
Password: input name="pwd"/br/
input type="submit" value="login"/
/form
直接写的没测试,希望能正确吧。
1,配置文件
复制代码代码如下:
?php
define('PATH',dirname($_SERVER['SCRIPT_NAME'])); //聊天室目录
define('CHAT_NAME','PHP聊天室'); //聊天室名称
define("MESS", "mess.txt"); //聊天信息
define("PERSON", "person.txt"); //在线人名单
define("RETIME",3); //刷新时间
define("LINE",11); //公共窗口显示的行数
define("PRLINE",5); //私聊窗口显示的行数
define("MAX",50); //聊天室人数限制
define("MAXTIME",600000); //最大不发言时间,单位是毫秒
define("WELCOME","font color=blue欢迎光临".CHAT_NAME.",请遵守聊天室规则,不要恶意刷新,不要使用不文明用语。/font"); //欢迎语
?
2,公共函数文件
(1)chklogin()函数检查用户昵称是否重复。参数$user是登录用户的昵称。当函数返回值为True时,昵称不可用;返回值为False时,昵称可用。
复制代码代码如下:
function chklogin($file,$user){
$boo = false;
if(file_exists($file)){
$userarr = file($file);
/* 判断昵称是否重复 */
foreach($userarr as $value){ //判断昵称是否重复
$tmparr = explode('#',$value); //使用“#”作为分隔符来拆分字符串
if($user == $tmparr[0]){ //如果用户数组中包含此用户
$boo = true;
break;
}
}
}
return $boo;
}
(2)addlogin()函数将登录的用户昵称写入文件中,保存格式为:昵称#IP#性别,参数$file是保存的文件地址,$user是用户昵称,$ip是登陆IP,$sex表示用户性别。
复制代码代码如下:
function addlogin($file,$user,$ip,$sex){
$tmp = $user.'#'.$ip.'#'.$sex.chr(13).chr(10); //chr(13) 是一个回车,Chr(10) 是个换行符,chr(32) 是一个空格符
$fp = fopen($file,'a'); //写入方式在文件末尾追加信息
$boo = fwrite($fp,$tmp);
fclose($fp);
return $boo;
}
(3)storeuser()函数的作用是将用户信息存为一个数组。格式为“用户名,用户性别”,参数$file是用户列表文件。代码如下:
复制代码代码如下:
function storeuser($file){
$tmparr = file($file); //将文件内容写入数组
$userarr = array(); //创建数组
foreach($tmparr as $value){ //循环输出数组内容
$tmparr = explode('#',$value); //使用#拆分字符串
$userarr[] = $tmparr[0].','.$tmparr[2]; //将用户名和用户性别保存到新数组中
}
return $userarr;
}
(4)addmess()函数将发言内容写入文件中。参数$file是保存的文件地址,$mess是要保存的内容
复制代码代码如下:
function addmess($file,$mess){
$fp = fopen($file,'a'); //以追加的形式打开文件
$boo = fwrite($fp,$mess.chr(13).chr(10)); //将信息写入文件中
fclose($fp); //关闭文件
return boo;
}
(5)deluser()函数的作用是删掉用户。参数$file是保存的文件地址,$user是要删除的用户
复制代码代码如下:
function deluser($file,$user){
$tmparr = file($file); //将文件内容写入数组
$rearr = array(); //创建数组
foreach($tmparr as $value){ //循环输出数组内容
$tmp = explode('#',$value); //使用#拆分字符串
if($tmp[0] != $user){ //如果变量中的用户名和当前用户不相等
$rearr[] = $value; //将该用户信息保存到新数组中
}
}
$fp = fopen($file,'w+'); //以只写的方式打开文件
foreach($rearr as $value){ //循环数组
fwrite($fp,$value); //写入数组内容
}
fclose($fp); //关闭文件
}
(6)getRows()函数的作用是返回文件的行数,参数$file是文件名
复制代码代码如下:
function getRows($file){
if(file_exists($file)){ //如果文件存在
$fl = file($file); //将文件按行写入数组
return count($fl); //求出数组长度并返回
}else{
return 0; //如果文件不存在,返回0
将下面代码保存为login.php 和 confirm.php,然后运行login.php就可以
login.php
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ""
html
head
title New Document /title
meta http-equiv="content-type" content="text/html; charset=utf-8"
meta name="Generator" content="EditPlus"
meta name="Author" content=""
meta name="Keywords" content=""
meta name="Description" content=""
/head
body
form name="form1" method="post" action="confirm.php"
p用户名:input type="text" name="user"/p
p密码:input type="password" name="pwd"/p
pinput type="submit" name="b1"/p
/form
/body
/html
confirm.php
?
echo 'meta http-equiv="content-type" content="text/html; charset=utf-8"';
$user = isset($_POST['user'])? $_POST['user'] : '';
$pwd = isset($_POST['pwd'])? $_POST['pwd'] : '';
if(empty($user) || empty($pwd)){
echo '用户名和密码不能为空';
exit();
}
if($user=='user' $pwd=='pwd'){
echo '登陆成功';
}else{
echo '用户名或密码错误';
}
?
下面是登陆规则:
if($action=="login"){
$adminuser = var_request("username","");
$adminpass = md5(var_request("password",""));
if($adminuser==$manage_adminname $adminpass == $manage_adminpass ){
SetCookie("COOKIEadminuser", $adminuser);
$_SESSION['adminuser'] = $adminuser;