PHP验证登录用户名和密码

**

简单版

**
1数据库连接

mysql_connect("127.0.0.1","root","root")or die("数据库链接错误".mysql_error());   //连接数据库,(服务器地址,用户名,密码)
mysql_select_db("kk") or die("数据库访问错误".mysql_error());  //选择数据库
mysql_query("set names gb2312"); //防止现汉字乱码

2登录

$username = $_POST['username']; 
$password = $_POST['password'];  

3验证

$k = mysql_query("select * from user_list where username='$username' and password='$password' limit 1");  
if($result = mysql_fetch_row($k)){echo ' 登录成功,欢迎你!';  } else {  echo('登录失败!');  

数据建表和字段

create table user_list (
    id int(6) unsigned auto_increment primary key,
    username varchar(30) not null,
    password int not null
)

PHP验证登录用户名和密码

完整版

login.php 登录验证

数据库连接

方法一:
mysql_connect("127.0.0.1","root","root")
 or die("数据库链接错误".mysql_error());   //连接数据库,(服务器地址,用户名,密码)
mysql_select_db("kk") or die("数据库访问错误".mysql_error());  //选择数据库
mysql_query("set names gb2312"); //防止现汉字乱码

方法二:

    include('conn.php');   include引入数据库连接文件

登录

htmlspecialchars() 函数:
htmlspecialchars() 函数把特殊字符转换为 HTML 实体。这意味着 < 和 > 之类的 HTML 字符会被替换为 < 和 > 。这样可防止攻击者通过在表单中注入 HTML 或 JavaScript 代码(跨站点脚本攻击)对代码进行利用。
MD5()加密函数

if(!isset($_post['submit'])){ exit('非法访问!'); }  //空显示非法访问  isset()  检测变量是否设置  !表示非,isset是存在,加!就表示不存在时条件才成立
$username = htmlspecialchars($_post['username']);  
$password = md5($_post['password']); 

验证

1mysql_query() 该函数用于向 MySQL 发送查询或命令
2mysql_fetch_array() 从结果集中取得一行作为关联数组,或数字数组,或二者兼有
3mysql_fetch_row() 从结果集中取得一行作为数字数组
4Session 变量用于存储有关用户会话的信息,或更改用户会话的设置,通过在服务器上存储用户信息以便随后使用,PHP session 解决了这个问题(比如用户名称、购买商品等)。不过,会话信息是临时的,在用户离开网站后将被删除。如果您需要永久储存信息,可以把数据存储在数据库中。Session 的工作机制是:为每个访问者创建一个唯一的 id (UID),并基于这个 UID 来存储变量。UID 存储在 cookie 中,亦或通过 URL 进行传导。
session_start()//向服务器注册用户的会话,以便您可以开始保存用户信息,同时会为用户会话分配一个 UID
$_SESSION[] //存储和取回 session 变量

$check_query = mysql_query("select userid from user_list where username='$username' and password='$password' limit 1");  
if($result = mysql_fetch_array($check_query)){  
    //登录成功  
    session_start();  
    $_SESSION['username'] = $username;  
    $_SESSION['userid'] = $result['userid'];  
    echo $username,' 欢迎你!进入 <a href="my.php">用户中心</a><br />';  
    echo '点击此处 <a href="login.php?action=logout">注销</a> 登录!<br />';  
    exit;  
} else {  
    exit('登录失败!点击此处 <a href="javascript:history.back(-1);">返回</a> 重试');  
}  
//注销登录  
if($_GET['action'] == "logout"){  
    unset($_SESSION['userid']);  
    unset($_SESSION['username']);  
    echo '注销登录成功!点击此处 <a href="login.html">登录</a>';  
    exit;  
}  

my.php 是用户中心,作为用户登录检测

<?php  
session_start();  
//检测是否登录,若没登录则转向登录界面  
if(!isset($_SESSION['userid'])){  
    header("Location:login.html");  
    exit();  
}  
//包含数据库连接文件  
include('conn.php');  
$userid = $_SESSION['userid'];  
$username = $_SESSION['username'];  
$user_query = mysql_query("select * from user_list where userid = '$userid' limit 1");  
$row = mysql_fetch_array($user_query);  
echo '用户信息:<br />';  
echo '用户ID:',$userid,'<br />';  
echo '用户名:',$username,'<br />';  
echo '<a href="login.php?action=logout">注销</a> 登录<br />';  
?>

$_POST[“a”]:获取post提交的数据a的值

mysql_query(“select * from admin where ad_name=‘usernameandadcode=username&#x27; and ad_code=&#x27;password’ limit 1”);执行一条MySQL查询

mysql_fetch_array($check_query):获取根据如上数据表查询的一行信息