PHP:登录界面

<?php 
	DEFINE('DB_HOST','localhost');
	DEFINE('DB_USER','root');
	DEFINE('DB_PWD','');
	DEFINE('DB_NAME','name');
	$dbc=mysqli_connect (DB_HOST,DB_USER,DB_PWD,DB_NAME);
	if(!$dbc)
	{
		echo"连接失败:".mysqli_connect_error();
		exit(1);
	}
	mysqli_set_charset($dbc,'utf8');	
	//上为连接数据库代码,[数据库链接具体介绍](https://blog.csdn.net/mishilq/article/details/89217424)
	if(isset($_POST['tj'])){
		//如果点击提交按钮,开始验证用户名与密码是否和数据库内数据匹配
		$zh=$_POST['user_id'];
		//得到输入的用户名内容
	    $pass=$_POST['pass'];
	    //得到输入的密码内容
	    if($zh=='')
	    //如果用户名没填写则直接报错
	    {
	        echo "<script>alert('用户名不能为空');location.href='denglu.php';</script>";
	        //利用js代码弹出错误提示,并且重新进入此页面
	        return -1;
	        //让PHP直接返回,不再执行下面代码(PHP中一般错误返回flase或0或-1)
	    }
	    $sql="SELECT * from users WHERE user_id='$zh' and pass=SHA1('$pass')";
	    //查询数据库中符合用户名字段(此句中user_id为用户名字段名)等于输入的用户名内容并且数据库中密码字段(此句中pass为密码字段名)等于输入的密码行(注意表名要改为自己的表名此句中users为我的表名)
	    $rs=mysqli_query($dbc,$sql);
	    //执行上面的数据库代码 
	    $num=mysqli_num_rows($rs); 
	     //此函数为判断$rs中有几行(查询语句返回的是一个列表)
	    if($num<=0){
	    //当返回的表行数小于或等于0时说明没有满足(数据库中用户名字段等于输入的用户名内容并且数据库中密码字段等于输入的密码)的行
	        echo "<script>alert('用户名或密码错误');location.href='denglu.php';</script>";
	        //通过js代码弹出错误提示,并且重新进入此页面
	        return -1;
	        //返回-1,不再执行下面代码
	    }
	    echo "<script>alert('登录成功');location.href='index.php';</script>";
	    //如果上面的判断语句都没有满足,就能执行到这一行,让页面跳转到index.php页面
	}
?>
//下面为HTML代码
<!doctype html>
<html>
    <head>
        <meta charset="utf-8">
    </head>
    <body>
        <form method="post" action="">
            <label for="uname">账号:</label><input type="text" name="user_id" id="user_id"><br><br>
            <label for="uname">密码:</label><input type="text" name="pass" id="pass"><br><br>
            <input type="submit" value="登录" name='tj'>
        </form>
    </body>
</html>
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值