flash头像上传组件
jcrop组件 裁切头像
登录数据库表的建立
create table hnsc_user(
account varchar(50) primary key,
pwd varchar(50), -- 密码
truename varchar(50),-- 真是姓名
face varchar(200), -- 注册时上传的头像
why varchar(100), -- 注册时设置的问题
ok varchar(100), -- 设置的问题的答案
rip varchar(15),
regtime int unsigned-- 注册的时间
)engine=myisam default charset=utf8;
select * from hnsc_user;
drop table hnsc_user;
-- 日志管理表
create table hnsc_userlog(
id smallint unsigned auto_increment,
account varchar(50), -- 账户
alog varchar(30), -- 用户的日志操作的内容
aip varchar(15), -- 登录的ip
atime int unsigned, -- 登录的时间
primary key(id)
)engine=myisam default charset=utf8;
useradd.php
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>网站首页</title>
<style>
</style>
</head>
<body>
<form action="usersave.php" method="post">
账户:<input type="text" name="account"><br>
密码:<input type="text" name="pwd1"><br>
再次输入密码:<input type="text" name="pwd2"><br>
真实姓名:<input type="text" name="truename"><br>
<input type="submit" value="注册账户">
<a href="login.php">登录 </a>
</form>
</body>
</html>
print_r($_SERVER);
打印出所有的属性
$_SERVER['REMOTE_ADDR'] 获得客户的ip地址
如果出现eval()的错误可以尝试
打印出来插入语句,然后复制到数据中,看看能否插入,仔细查看原因
checklogin.php
<?php
session_start();
include '../inc/db_mysqli.php';
$a=trim($_POST['account']);
$p=mymd5($_POST['pwd'],$a);
$stmt=$m->prepare('select count(*),truename from hnsc_user where account=? and pwd=?');
$stmt->bind_param('ss',$a,$p);
$stmt->execute();
$stmt->bind_result($cc,$name);
$stmt->fetch();
$stmt->free_result();
$stmt->close();
if($cc==0){
echo '登录失败请重新登录';
echo " <a href='login.php'>登录 </a>";
}else if($cc==1){
echo '欢迎'.$name;
$_SESSION['user']=[$a,$name];//是为了传值
echo"<a href='logout.php'>安全退出</a>";
}
//echo $cc,$name; //如果账号密码乱敲会得出0的结果如果正确输入会显示1,所以如果有账号为1,没有账号则为0
login.php
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>网站首页</title>
<style>
</style>
</head>
<body>
<form action="checklogin.php" method="post">
账户:<input type="text" name="account"><br>
密码:<input type="text" name="pwd"><br>
<input type="submit" value="登录">
</form>
</body>
</html>
乱敲账号密码的结果
正确输入的结果
如果有则为1
】
checklogin.php 的完整代码
<?php
session_start();
include '../inc/db_mysqli.php';
$a=trim($_POST['account']);
$p=mymd5($_POST['pwd'],$a);
$stmt=$m->prepare('select count(*),truename from hnsc_user where account=? and pwd=?');
$stmt->bind_param('ss',$a,$p);
$stmt->execute();
$stmt->bind_result($cc,$name);
$stmt->fetch();
$stmt->free_result();
$stmt->close();
if($cc==0){
echo '登录失败请重新登录';
echo " <a href='login.php'>登录 </a>";
}else if($cc==1){
echo '欢迎'.$name;
$_SESSION['user']=[$a,$name];//是为了传值
echo"<a href='logout.php'>安全退出</a>";
}
//echo $cc,$name; //如果账号密码乱敲会得出0的结果如果正确输入会显示1,所以如果有账号为1,没有账号则为0
islogin.php
<?php
session_start();
if(isset($_SESSION['user'])){
}else{
header('location:login.php');
}
?>
把此行代码全部放在后台管理系统的每个页面的头部即可
就必须要登录成功以后才能查看此页面
loginout.php 安全退出
<?php
session_start();
unset($_SESSION['user']);
echo " <a href='login.php'>登录 </a>";
除了登录页面和校验登录页面不用加islogin.php 其他页面都需要加
checklogin.php 和 login.php