PHP+MySQL登录注册,完整版,详细注释

纯手写打造。

下载地址:http://download.csdn.net/detail/qq_33599520/9779970

项目结构:

下面是代码:

<!DOCTYPE html>
<html lang="cn">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>后台登陆</title>
<link href="css/login.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="js/login.js"></script>
</head>
<body>
	<div class="login">
	    <div class="message">大数据的事件智能抓取和画像后台登陆</div>
	    <div id="darkbannerwrap"></div>
	    <form name="login" action="php/login.php" method="post" onsubmit="return check()">
			<input name="name" id="name" placeholder="请输入登录帐号" type="text" required="required" maxlength="16">
				<hr class="hr15">
			<input name="password" id="password" placeholder="请输入登录密码" type="password" required="required" maxlength="16">
				<hr class="hr15">
			<input value="登录" style="width:100%;" type="submit" name="submit">
			<a href="result.html">注册</a>
			<a href="#">忘记密码</a>
				<hr class="hr20">
		</form>
	</div>
</body>
</html>

  

<!DOCTYPE html>
<html lang="cn">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>后台注册</title>
<link href="css/result.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="js/result.js"></script>
</head>
<body>
	<div class="login">
	    <div class="message">大数据的事件智能抓取和画像后台注册</div>
	    <div id="darkbannerwrap"></div>
	    <form name="result" action="php/result.php" method="post" onsubmit="return check()">
			<input name="name" id="name" placeholder="请输入帐号" type="text" required="required" maxlength="16">
				<hr class="hr15">
			<input name="password" id="password" placeholder="请输入密码" type="password" required="required" maxlength="16">
				<hr class="hr15">
			<input name="pwd" id="pwd" placeholder="请再次输入密码" type="password" required="required" maxlength="16">
				<hr class="hr15">
			<input value="注册" style="width:100%;" type="submit" name="submit">
			<a href="login.html">返回登录</a>
			<a href="#">忘记密码</a>
				<hr class="hr20">
		</form>
	</div>
</body>
</html>

  

	function $(id) {
	    return document.getElementById(id);
	}

	function check() {
		var password = $("password").value;

		if(password == "") {
            alert("密码不能为空");
            $("password").focus();
            return false;
        }
        if(password.length < 6) {
            alert("密码长度必须为6-16位");
            $("password").focus();
            return false;
        }
	}

  

	function $(id) {
	    return document.getElementById(id);
	}

	function check() {
		var password = $("password").value;
        var pwd = $("pwd").value;

        if(password == "") {
            alert("密码不能为空");
            $("password").focus();
            return false;
        }
        if(password.length < 6) {
            alert("密码长度必须为6-16位");
            $("password").focus();
            return false;
        }
        if(pwd != password) {
            alert("您两次输入的密码不一致!");
            $("pwd").focus();
            return false;
        }
	}

  

*{
    font: 13px/1.5 ‘微软雅黑‘, Verdana, Helvetica, Arial, sans-serif;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -box-sizing: border-box;
    padding:0;
    margin:0;
    list-style:none;
    box-sizing: border-box;
}

body,html{
    height:100%;
    overflow:hidden;
}
body{
    background:url(../images/web_login_bg.jpg) no-repeat center;
    background-size: cover;
}
a{
    color:#27A9E3;
    text-decoration:none;
    cursor:pointer;
}
.login{
    margin: 150px auto 0 auto;
    min-height: 420px;
    max-width: 420px;
    padding: 40px;
    background-color: #ffffff;
    margin-left: auto;
    margin-right: auto;
    border-radius: 4px;
    /* overflow-x: hidden; */
    box-sizing: border-box;
}
a.logo{
    display: block;
    height: 58px;
    width: 167px;
    margin: 0 auto 30px auto;
    background-size: 167px 42px;
}
.message {
    margin: 10px 0 0 -58px;
    padding: 18px 10px 18px 60px;
    background: #27A9E3;
    position: relative;
    color: #fff;
    font-size: 16px;
}
#darkbannerwrap {
    background: url(../images/aiwrap.png);
    width: 18px;
    height: 10px;
    margin: 0 0 20px -58px;
    position: relative;
}

input[type=text],
input[type=file],
input[type=password],
input[type=email], select {
    border: 1px solid #DCDEE0;
    vertical-align: middle;
    border-radius: 3px;
    height: 50px;
    padding: 0px 16px;
    font-size: 14px;
    color: #555555;
    outline:none;
    width:100%;
}
input[type=text]:focus,
input[type=file]:focus,
input[type=password]:focus,
input[type=email]:focus, select:focus {
    border: 1px solid #27A9E3;
}

input[type=submit],
input[type=button]{
    display: inline-block;
    vertical-align: middle;
    padding: 12px 24px;
    margin: 0px;
    font-size: 18px;
    line-height: 24px;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    color: #ffffff;
    background-color: #27A9E3;
    border-radius: 3px;
    border: none;
    -webkit-appearance: none;
    outline:none;
    width:100%;
}
hr.hr15 {
    height: 15px;
    border: none;
    margin: 0px;
    padding: 0px;
    width: 100%;
}
hr.hr20 {
    height: 20px;
    border: none;
    margin: 0px;
    padding: 0px;
    width: 100%;
}

.copyright{
    font-size:14px;
    color:rgba(255,255,255,0.85);
    display:block;
    position:absolute;
    bottom:15px;
    right:15px;
}

  

*{
    font: 13px/1.5 ‘微软雅黑‘, Verdana, Helvetica, Arial, sans-serif;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -box-sizing: border-box;
    padding:0;
    margin:0;
    list-style:none;
    box-sizing: border-box;
}

body,html{
    height:100%;
    overflow:hidden;
}
body{
    background:url(../images/web_result_bg.jpg) no-repeat center;
    background-size: cover;
}
a{
    color:#27A9E3;
    text-decoration:none;
    cursor:pointer;
}
.login{
    margin: 150px auto 0 auto;
    min-height: 420px;
    max-width: 420px;
    padding: 40px;
    background-color: #ffffff;
    margin-left: auto;
    margin-right: auto;
    border-radius: 4px;
    /* overflow-x: hidden; */
    box-sizing: border-box;
}
a.logo{
    display: block;
    height: 58px;
    width: 167px;
    margin: 0 auto 30px auto;
    background-size: 167px 42px;
}
.message {
    margin: 10px 0 0 -58px;
    padding: 18px 10px 18px 60px;
    background: #27A9E3;
    position: relative;
    color: #fff;
    font-size: 16px;
}
#darkbannerwrap {
    background: url(../images/aiwrap.png);
    width: 18px;
    height: 10px;
    margin: 0 0 20px -58px;
    position: relative;
}

input[type=text],
input[type=file],
input[type=password],
input[type=email], select {
    border: 1px solid #DCDEE0;
    vertical-align: middle;
    border-radius: 3px;
    height: 50px;
    padding: 0px 16px;
    font-size: 14px;
    color: #555555;
    outline:none;
    width:100%;
}
input[type=text]:focus,
input[type=file]:focus,
input[type=password]:focus,
input[type=email]:focus, select:focus {
    border: 1px solid #27A9E3;
}

input[type=submit],
input[type=button]{
    display: inline-block;
    vertical-align: middle;
    padding: 12px 24px;
    margin: 0px;
    font-size: 18px;
    line-height: 24px;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    color: #ffffff;
    background-color: #27A9E3;
    border-radius: 3px;
    border: none;
    -webkit-appearance: none;
    outline:none;
    width:100%;
}
hr.hr15 {
    height: 15px;
    border: none;
    margin: 0px;
    padding: 0px;
    width: 100%;
}
hr.hr20 {
    height: 20px;
    border: none;
    margin: 0px;
    padding: 0px;
    width: 100%;
}

.copyright{
    font-size:14px;
    color:rgba(255,255,255,0.85);
    display:block;
    position:absolute;
    bottom:15px;
    right:15px;
}

  

<?php
  $server="localhost";//主机
  $db_username="root";//你的数据库用户名
  $db_password="root";//你的数据库密码

  $con = mysql_connect($server,$db_username,$db_password);//链接数据库
  if(!$con){
    die("can‘t connect".mysql_error());//如果链接失败输出错误
  }

  mysql_select_db(‘test‘,$con);//选择数据库(test是数据库名称)
  //字符转换,读库
	mysql_query("set character set ‘utf-8‘");
	//写库
	mysql_query("set names ‘utf-8‘");
?>

  

<?PHP
  header("Content-Type: text/html; charset=utf8");

  if(!isset($_POST["submit"])){
    exit("非法访问!");
  }//检测是否有submit操作 

  include(‘connect.php‘);//链接数据库

  $name = $_POST[‘name‘];//post获得用户名表单值
  $passowrd = MD5($_POST[‘password‘]);//post获得用户密码单值,使用MD5加密,不可逆

  if ($name && $passowrd){//如果用户名和密码都不为空
       $sql = "select * from admin where username = ‘$name‘ and password=‘$passowrd‘";//检测数据库是否有对应的username和password的sql
       $result = mysql_query($sql);//执行sql
       $rows=mysql_num_rows($result);//返回一个数值
       if($rows){//0 false 1 true
       	  //登录成功
       	  session_start();//启动Session
       	  $_SESSION[‘name‘] = $_POST[‘name‘];
          header("refresh:0;url=sucess.php");//如果成功跳转至sucess.php页面
          exit;
       }else{
        echo "用户名或密码错误,请重新登录!";
        echo "
          <script>
              setTimeout(function(){window.location.href=‘../login.html‘;},1000);
          </script>

        ";//如果错误使用js 1秒后跳转到登录页面重试;
       }

  }else{//如果用户名或密码有空
        echo "用户名或密码填写不完整,请重新登录!";
        echo "
           <script>
              setTimeout(function(){window.location.href=‘../login.html‘;},1000);
           </script>";
            //如果错误使用js 1秒后跳转到登录页面重试;
  }

  mysql_close();//关闭数据库
?>

  

<?php
	session_start();//初始化session
	session_destroy();//注销session
	header("location:../login.html");//注销session并跳转
?>

  

<?php
  header("Content-Type: text/html; charset=utf8");

  if(!isset($_POST[‘submit‘])){
    exit("错误执行");
  }//判断是否有submit操作

  $name=$_POST[‘name‘];//post获取表单里的name
  $password=MD5($_POST[‘password‘]);//post获取表单里的password,使用MD5加密,不可逆

  include(‘connect.php‘);//链接数据库

  $sql = "select username from admin where username = ‘$name‘";//SQL语句
  $result = mysql_query($sql);//执行SQL语句
  $num = mysql_num_rows($result);//统计执行结果影响的行数
  if ($num) {//如果已经存在该用户
  	 echo "<script>alert(‘温馨提示:用户存在!‘); history.go(-1);</script>";
  } else {
  	$q="insert into admin(id,username,password) values (null,‘$name‘,‘$password‘)";//向数据库插入表单传来的值的sql
  	$reslut=mysql_query($q,$con);//执行sql
  if (!$reslut){
    die(‘Error: ‘ . mysql_error());//如果sql执行失败输出错误
  }else{
    echo "注册成功";//成功输出注册成功
    echo "
           <script>
              setTimeout(function(){window.location.href=‘../login.html‘;},1000);
           </script>";
           //如果注册成功使用js 1秒后跳转到登录页面;
  	}
  }
  mysql_close($con);//关闭数据库
?>

  

<?PHP
	ini_set("error_reporting","E_ALL & ~E_NOTICE");
	session_start();//启动Session
	if(!$_SESSION[‘name‘]){
    	echo "<script language=‘javascript‘>alert(‘对不起,您未登录!‘);history.back();</script>";
	}
?>
<html lang="cn">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>欢迎成功进入首页!</title>
</head>
<body>
	<h1>当前登录用户:</h1>
	<h2>
		<?PHP
			echo $_SESSION[‘name‘];
		?>
	</h2>
	<a href="logout.php">注销用户</a>
</body>
</html>

  

<?php 

?>

  纯手写,如果有不足之处请谅解。

时间: 2024-10-25 15:05:08

PHP+MySQL登录注册,完整版,详细注释的相关文章

CI框架下 新浪微博登录接口完整版

https://www.cnblogs.com/yznyzcw/p/3756622.html#top 说明:本贴只适合CI框架.功能实现:登录接口跳转链接成功,获取用户信息(包括最重要的u_id)成功,将用户与本地平台连接起来,用户登录成功后信息的存储,本地数据库第三方登录表的设计.总之接口流程已全部完成.每个关键步骤我几乎都有注释,讲解详细. 首先来看下流程:流程原理:     1.通过code获得access_token通过授权,并获取用户的信息(包括用户u_id)(这个u_id在后面的第三

Nodejs学习总结 -Express 登录注册实例(二)

项目创建后,我们来做个登录注册实例,详细操作步骤如下. 1.新建项目demo ,具体操作步骤参考上一章内容 https://www.cnblogs.com/Anlycp/ 2.添加mysql和session包 package.json dependencies中添加下面内容后输入npm install进行安装 "mysql": "latest", "express-session" : "latest", 输入下面语句进行和上

Ubuntu+Apache+PHP+Mysql环境搭建(完整版)

Ubuntu+Apache+PHP+Mysql环境搭建(完整版) 一.操作系统 Ubuntu 14.04 64位,阿里云服务器 二.Apache 1.安装Apache,安装命令:sudo apt-get install apache2 2.环境配置: 1)配置文件:路径为/etc/apache2,配置文件是apache2.conf,而没有http.conf. 2)默认网站根目录:/var/www/html,使用浏览器访问http://localhost  即可打开: 3)修改网站根目录: A."

CENTOS7 安装openstack mitaka版本(最新整理完整版附详细截图和操作步骤,添加了cinder和vxlan)

CENTOS7 安装openstack mitaka版本(最新整理完整版附详细截图和操作步骤,添加了cinder和vxlan,附上个节点的配置文件) 实验环境准备: 为了更好的实现分布式mitaka版本的效果.我才有的是VMware的workstations来安装三台虚拟机,分别来模拟openstack的controller节点 compute节点和cinder节点.(我的宿主机配置为 500g 硬盘 16g内存,i5cpu.强烈建议由条件的朋友将内存配置大一点,因为我之前分配的2g太卡.) 注

Ubuntu+Apache+PHP+Mysql环境搭建(完整版)(转)

http://www.2cto.com/os/201505/401588.html Ubuntu+Apache+PHP+Mysql环境搭建(完整版) 一.操作系统Ubuntu 14.04 64位,阿里云服务器 二.Apache 1.安装Apache,安装命令:sudo apt-get install apache2 2.环境配置: 1)配置文件:路径为/etc/apache2,配置文件是apache2.conf,而没有http.conf. 2)默认网站根目录:/var/www/html,使用浏览

Mysql命令大全(完整版)

原文:http://www.jb51.net/article/74564.htm 一.连接数据库 格式:mysql -h主机地址 -u用户名 -p用户密码 1.1.连接到本机上的MYSQL. 首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输密码. 注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码. 如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提

路飞项目搭建3 TODO注释, 自定义模态框, vue-cookies操作浏览器cookies, 腾讯云短信开发, 代码(登录注册页面,多方式登录,手机是否存在验证接口,腾讯短信开发)

TODO注释 """ 作用:todo是一种特殊的注释,书写就是 # TODO 注释内容,可以在TODO控制台面板快速定位注释位置 """ 自定义模态框 componses/Login.vue <template> <div class="login"> <span @click="close_login">x</span> </div> </

Java业务逻辑结合MySQL实现登录注册(XMPP协议的运用)

XMPP协议: 通信协议是一种约定的规则,XMPP也无外乎是一种接口规则.简单的说XMPP协议是一种标记格式的文本串. 举例: <msg><send>hxjava</send><content>helloworld</content></msg> 学习了XMPP协议之后,就实现C/S的登录注册操作,这一次的登录操作就不像以前那样用一些Map容器存储数据了. 存储数据要用数据库,这样不仅便于数据管理维护,而且数据不容易丢失,建立Map容

基于java web+mysql的登录注册系统

 结对编程二人项目 组员:王刚029   齐凤霞007 项目名称:基于java web+mysql的登录注册系统 软件需求: 1,任何基于B/S或者C/S的软件都离不开基本的登录注册,我们决定采用B/S结构+MySQL数据库来完成基本的登录注册功能2,采用简单的JSP+Servlet+MySQL完成登录,注册功能3,登录,注册界面信息的回显,数据格式的校验功能 说明: 1,采用MVC模式,降低了代码的耦合性整体架构:>jsp显示页面和回显数据>Servlet负责处理jsp提交的数据>Se