十日冲刺(第二阶段)

一、说在前面

  今天没有开发安卓的相关内容,实验报告还有大作业压得快喘不过气来了。

二、完成情况

     administrators.php:

<?php
/**
 * Created by PhpStorm.
 * User: 杨雄豪
 * Date: 2020/5/17
 * Time: 17:43
 */
error_reporting(0);
header ( "Content-type: text/html; charset=utf-8" ); //设置文件编码格式
include_once("conn/conn.php");
$sql = "select * from administrators WHERE name = '".$_GET['name']."' and password = '".$_GET['password']."'";
$result = mysqli_query($conn,$sql) or die("数据查找失败!");
$row = mysqli_fetch_row($result);

echo $row[0];
if($row[0]){
    echo "<script> alert('登录成功'); </script>";
    echo "<meta http-equiv='Refresh' content='0;URL=text.php'>";
}else {
    if($_GET["name"]!=null) {
        echo "<script> alert('用户名或者密码错误!'); </script>";
    }
}

?>
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>管理员登录</title>
    <style>
        #in{
            padding-bottom: 10px;
        }

    </style>
</head>
<body>
<div style="text-align: center">
<form method="get" action="administrators.php"  >
    <div><h3>管理员登录</h3></div>
    <div id="in">用户名:&nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="name" id="name"></div>
    <div id="in">密码:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="password" name="password" id="password"></div>
    <div id="in">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" value="确定" style="width: 130px" ></div>
    </div>
</form>
</body>
</html>
View Code

directlogin.php:

<?php
/**
 * Created by PhpStorm.
 * User: 杨雄豪
 * Date: 2020/5/13
 * Time: 21:13
 */
if (isset($_REQUEST['code'])){
    session_start();

    if ($_REQUEST['code'] != $_SESSION['code']){
        echo "<script>alert('验证码错误!');</script>";
        echo "<meta http-equiv='Refresh' content='0;URL=directlogin.php'>";
        exit();
    }
}
error_reporting(0);
header ( "Content-type: text/html; charset=utf-8" ); //设置文件编码格式
include_once("conn/conn.php");
$sql = "select * from shop WHERE username = '".$_GET['username']."' AND password = '".$_GET['password']."'";
$result = mysqli_query($conn,$sql) or die("数据查找失败!");
$row = mysqli_fetch_row($result);
session_start();
if($row[0]){
    echo "<script>alert('登陆成功!');</script>";
    echo "<meta http-equiv='Refresh' content='0;URL=text.php'>";
    return;
}else{
   if($_GET['username']!=null) {
       $sql1 = "select * from shop WHERE username = '".$_GET['username']."'";
       $result1 = mysqli_query($conn,$sql1) or die("数据查找失败!");
       $row1 = mysqli_fetch_row($result1);
       if($row1[0]){
           $_SESSION['username']=$row1[0];
           echo "<script>alert('密码错误!');</script></a>";
       }else{
           echo "<script> alert('用户名不存在,请先进行注册'); </script>";
           echo "<meta http-equiv='Refresh' content='0;URL=zhuce.php'>";
       }
   }
}
?>

<!DOCTYPE html>

<html>

<head>

    <meta charset="utf-8" />

    <title>登录</title>

    <!--用百度的静态资源库的cdn安装bootstrap环境-->
    <script type="text/javascript" src="js/jquery-1.8.3.js"></script>
    <script type="text/javascript" src="js/jquery.validate.min.js"></script>
    <script type="text/javascript" src="js/messages_zh.js"></script>

    <!-- Bootstrap 核心 CSS 文件 -->

    <link href="http://apps.bdimg.com/libs/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet">

    <!--font-awesome 核心我CSS 文件-->

    <link href="//cdn.bootcss.com/font-awesome/4.3.0/css/font-awesome.min.css" rel="stylesheet">

    <!-- 在bootstrap.min.js 之前引入 -->

    <script src="http://apps.bdimg.com/libs/jquery/2.0.0/jquery.min.js"></script>

    <!-- Bootstrap 核心 JavaScript 文件 -->

    <script src="http://apps.bdimg.com/libs/bootstrap/3.3.0/js/bootstrap.min.js"></script>

    <!--jquery.validate-->

    <script type="text/javascript" src="js/jquery.validate.min.js" ></script>

    <script type="text/javascript" src="js/message.js" ></script>

    <style type="text/css">

        body{background: url(img/1.jpg) no-repeat;background-size:cover;font-size: 16px;}

        .form{background: rgba(255,255,255,0.2);width:400px;margin:100px auto;}

        #login_form{display: block;}

        .fa{display: inline-block;top: 27px;left: 6px;position: relative;color: #ccc;}

        input[type="text"],input[type="password"]{padding-left:26px;}

        .checkbox{padding-left:21px;}
        input.error { border: 1px solid red; }
        label.error {
            font-weight: bold;
            color: red;
        }
        /*.form-group{*/
            /*border: 1px solid red;*/
        /*}*/
    </style>
    <script>
        $(function () {
            $("#login_form").validate({
                rules:{
                    username:{
                        required:true,
                    },
                    password:{
                        required:true,
                    },
                    code:{
                        required:true
                    }
                },
                messages:{
                    username:{
                        required:"账号不能为空!",
                    },
                    password:{
                        required:"密码不能为空!",
                    },
                    code:{
                        required:"验证码不能为空"
                    }
                }
            });

        });

    </script>
</head>

<body>

<!--

    基础知识:

    网格系统:通过行和列布局

    行必须放在container内

    手机用col-xs-*

    平板用col-sm-*

    笔记本或普通台式电脑用col-md-*

    大型设备台式电脑用col-lg-*

    为了兼容多个设备,可以用多个col-*-*来控制;

-->

<div class="container">

    <div class="form row">

        <form class="form-horizontal col-sm-offset-3 col-md-offset-3" id="login_form" action="directlogin.php" method="get">

            <h3 class="form-title">用户登录</h3>

            <div class="col-sm-9 col-md-9">

                <div class="form-group">

                    <i class="fa fa-user fa-lg"></i>

                    <input name="username" class="form-control required" type="text" placeholder="Username" name="username" autofocus="autofocus" maxlength="20"/>

                </div>

                <div class="form-group">

                    <i class="fa fa-lock fa-lg"></i>

                    <input name="password"class="form-control required" type="password" placeholder="Password" name="password" maxlength="8"/>

                </div>
                <div class="form-inline" >
                    <input name="code"class="form-control"  placeholder="Verification Code" name="yzm" maxlength="8" style="width: 90px"/>
                    <img src="yanzhengma.php" onClick="this.src='yanzhengma.php?nocache='+Math.random()" style="cursor:hand" alt="点击换一张"/>

                </div>


                <div class="form-group">

                    <label class="checkbox">

                        <input type="checkbox" name="remember" value="1"/>记住我
                        &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;<a href="findingmima.php">密码找回</a>

                    </label>

                    <hr />

                    <a href="zhuce.php" id="register_btn" class="">注册</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                    <a href="#" id="register_btn" class="">游客</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                    <a href="administrators.php" id="register_btn" class="">管理员登录</a>
                </div>

                <div class="form-group">

                    <input type="submit" class="btn btn-success pull-right" value="Login "/>

                </div>

            </div>

        </form>

    </div>

</body>

</html>
View Code

findingmima.php:

<?php
/**
 * Created by PhpStorm.
 * User: 杨雄豪
 * Date: 2020/5/31
 * Time: 11:26
 */
header ( "Content-type: text/html; charset=utf-8" ); //设置文件编码格式
include_once("conn/conn.php");
session_start();
$name = $_SESSION['username'];
$sql = "select * from shop WHERE username = '".$name."'";
$result = mysqli_query($conn,$sql) or die("数据查找失败!");
$row = mysqli_fetch_row($result);
echo "您的密码为:    ";
echo $row[1];
View Code

yanzhengma.php:

<?php
/**
 * Created by PhpStorm.
 * User: 杨雄豪
 * Date: 2020/5/17
 * Time: 18:10
 */
session_start(); //设置session,一定要在顶部

$width = 100; //设置图片宽为300像素
$height = 30; //设置图片高为40像素

$image = imagecreatetruecolor($width, $height); //设置验证码大小的函数
$bgcolor = imagecolorallocate($image, 255, 255, 255); //验证码颜色RGB为(255,255,255)#ffffff
imagefill($image, 0, 0, $bgcolor); //区域填充

$cap_code = "";
for($i=0;$i<4;$i++){
    $fontsize = 7; //设置字体大小
    $fontcolor = imagecolorallocate($image, rand(0,120), rand(0,120), rand(0,120));
    //数字越大,颜色越浅,这里是深颜色0-120
    $fontcontent = rand(0,9);
    $cap_code.=$fontcontent; //.=连续定义变量

    $x = ($i*100/4)+rand(5,10);
    $y = rand(0,5);
    //设置坐标

    imagestring($image, $fontsize, $x, $y, $fontcontent, $fontcolor);
}

$_SESSION['code'] = $cap_code; //存到session

//设置干扰元素,设置雪花点
for($i=0;$i<300;$i++){
    $inputcolor = imagecolorallocate($image, rand(50,200), rand(20,200), rand(50,200));
    //设置颜色,20-200颜色比数字浅,不干扰阅读
    imagesetpixel($image, rand(1,149), rand(1,39), $inputcolor);
    //画一个单一像素的元素
}

//增加干扰元素,设置横线(先设置线的颜色,在设置横线)
for ($i=0;$i<4;$i++) {
    $linecolor = imagecolorallocate($image, rand(20,220), rand(20,220),rand(20,220));
    //设置线的颜色

    imageline($image, rand(1,149), rand(1,39), rand(1,299), rand(1,149), $linecolor);

}

//因为有些浏览器,访问的content-type会是文本型(乱码),所以我们需要设置成图片的格式类型
header('Content-Type:image/png');

imagepng($image); //建立png函数
imagedestroy($image); //结束图形函数,消除$image
?>
View Code

 zhuce.php

<?php
/**
 * Created by PhpStorm.
 * User: 杨雄豪
 * Date: 2020/5/13
 * Time: 22:35
 */
error_reporting(0);
header ( "Content-type: text/html; charset=utf-8" ); //设置文件编码格式
include_once("conn/conn.php");
$sql = "select * from shop WHERE username = '".$_GET['username']."'";
$result = mysqli_query($conn,$sql) or die("数据查找失败!");
$row = mysqli_fetch_row($result);
if($row[0]){
    echo "<script>alert('用户名已存在!');</script>";
}else {
    if($_GET["username"]!=null) {
        $sql = "INSERT INTO shop( `username`, `password`, `phone`,`email`,`salt`, `type`) VALUES ('" . $_GET["username"] . "','" . $_GET["password"] . "','" . $_GET["phone"] . "','" . $_GET["email"] . "','0','user')";
        $result = mysqli_query($conn, $sql) or die("数据插入失败!");
        echo "<script>alert('注册成功!');</script>";
    }
}
?>
<!DOCTYPE html>

<html>

<head>

    <meta charset="utf-8" />

    <title>用户注册</title>

    <!--用百度的静态资源库的cdn安装bootstrap环境-->
    <script type="text/javascript" src="js/jquery-1.8.3.js"></script>

    <!-- Bootstrap 核心 CSS 文件 -->

    <link href="http://apps.bdimg.com/libs/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet">

    <!--font-awesome 核心我CSS 文件-->

    <link href="//cdn.bootcss.com/font-awesome/4.3.0/css/font-awesome.min.css" rel="stylesheet">

    <!-- 在bootstrap.min.js 之前引入 -->

    <script src="http://apps.bdimg.com/libs/jquery/2.0.0/jquery.min.js"></script>

    <!-- Bootstrap 核心 JavaScript 文件 -->

    <script src="http://apps.bdimg.com/libs/bootstrap/3.3.0/js/bootstrap.min.js"></script>

    <!--jquery.validate-->

    <script type="text/javascript" src="js/jquery.validate.min.js" ></script>

    <script type="text/javascript" src="js/message.js" ></script>

    <style type="text/css">

        body{background: url(img/1.jpg) no-repeat;background-size:cover;font-size: 16px;}

        .form{background: rgba(255,255,255,0.2);width:400px;margin:100px auto;}

        .fa{display: inline-block;top: 27px;left: 6px;position: relative;color: #ccc;}

        input[type="text"],input[type="password"]{padding-left:26px;}

        .checkbox{padding-left:21px;}
        input.error { border: 1px solid red; }
        label.error {
            font-weight: bold;
            color: red;
        }

    </style>
<script>
    $(function () {
        $.validator.addMethod("isMobile", function(value, element) {
            var length = value.length;
            var mobile =/^1\d{10}$/;
            return this.optional(element) || (mobile.test(value));
        }, "请正确填写您的手机号码");

        $.validator.addMethod("isPassword", function(value, element) {
            var length = value.length;
            var mobile =/^1\d{5}$/;
            return this.optional(element) || (mobile.test(value));
        }, "请设置六位以上的密码");

        $.validator.addMethod("isEmail", function(value, element) {
            var length = value.length;
            var mobile = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
            return this.optional(element) || (mobile.test(value));
        }, "请正确填写您的邮箱");

        $("#register_form").validate({
            rules: {
                username: "required",
                password: {
                    required: true,
                    isPassword:true
                },
                rpassword: {
                    equalTo: "#register_password"
                },
                phone:{
                    required:true,
                    isMobile:true
                },
                email: {
                    required: true,
                    isEmail:true
                },
            },
            messages: {
                username: "请输入姓名",
                password: {
                    isPassword:"请设置六位以上的密码",
                    required: "请输入密码"
                },
                rpassword: {
                    equalTo: "两次密码不一样"
                },
                phone:{
                    required:"请输入手机号",
                    isMobile:"请输入有效手机号"
                },
                email: {
                    required: "请输入邮箱",
                    isEmail:"请正确填写您的邮箱"
                }

            }
        });
    });

</script>
</head>

<body>

<!--

    基础知识:

    网格系统:通过行和列布局

    行必须放在container内

    手机用col-xs-*

    平板用col-sm-*

    笔记本或普通台式电脑用col-md-*

    大型设备台式电脑用col-lg-*

    为了兼容多个设备,可以用多个col-*-*来控制;

-->

<div class="container">
    <div class="form row">
        <form class="form-horizontal col-sm-offset-3 col-md-offset-3" id="register_form" action="zhuce.php">
            <i><h3 class="form-title">用户注册</h3></i>
            <div class="col-sm-9 col-md-9">
                <div class="form-group">
                    <i class="fa fa-user fa-lg"></i>
                    <input class="form-control required" type="text" placeholder="Username" name="username" autofocus="autofocus"/>
                </div>
                <div class="form-group">
                    <i class="fa fa-lock fa-lg"></i>
                    <input class="form-control required" type="password" placeholder="Password" id="register_password" name="password"/>
                </div>
                <div class="form-group">
                    <i class="fa fa-check fa-lg"></i>
                    <input class="form-control required" type="password" placeholder="Re-type Your Password" name="rpassword"/>
                </div>
                <div class="form-group">
                    <i class="fa fa-tty" aria-hidden="true"></i>
                    <input class="form-control required" type="text" placeholder="Phone" name="phone"/>
                </div>
                <div class="form-group">
                    <i class="fa fa-envelope fa-lg"></i>
                    <input class="form-control eamil" type="text" placeholder="Email" name="email"/>
                </div>
                <div class="form-group">
                    <input type="submit" class="btn btn-success pull-right" value="确定"/>
                    <input type="button" class="btn btn-info pull-left" id="back_btn" onclick="window.location.href='http://localhost:63342/Shopping/directlogin.php?_ijt=7tdnegg1npd1jm79hh76k4el1e'" value="登录"/>
                </div>
            </div>
        </form>
    </div>

</body>

</html>
View Code

 

posted @ 2020-05-28 21:51  doublebest1  阅读(137)  评论(0编辑  收藏  举报