• 技术文章 >后端开发 >php教程

    如何用PHP实现简单注册登录系统(附源码)

    慕斯慕斯2021-05-25 15:28:23转载2309
    上篇文章给大家介绍了《如何用PHP解决高并发问题?(附源码)》,本文继续给大家介绍如何用PHP实现简单注册登录系统 ,一起研究吧!!!

    目录结构如下,其中function文件夹下包含两个函数文件,uploads文件夹用于存放上传的文件。
    文档结构
    注:博主使用的是php5,使用php7的小伙伴运行报错的话有一部分原因是新的语法造成的,修改成新语法就可以了


    html页面

    登录页面

    index.html

    <form action="login_process.php" method="POST">
        登录
        <input type="text" name="userName" size="20" maxlength="15" placeholder="请填写用户名及域名">
        <br>
    
        注册
        <input type="password" name="password" size="20" maxlength="15">
        <br>
        <input type="submit" value="登录">
        <input type="button" onclick="window.location.href='register.html'" value="注册">
    </form>

    注册页面

    register.html

    <h2>用户注册登录系统</h2>
    <hr>
    <form action="register.php" method="POST" enctype="multipart/form-data">
        用户名:
        <input type="text" name="userName" size="20" maxlength="15" placeholder="必须填写用户名">
        @
        <select name="domain" id="">
            <option value="@163.com" selected>163.com</option>
            <option value="@126.com">126.com</option>
        </select>
        <br>
    
        登录密码:
        <input type="password" name="password" size="20" maxlength="15">
        <br>
        
        确认密码:
        <input type="password" name="confirmPassword" size="20" maxlength="15">
        <br>
    
        选择性别:
        <input type="radio" name="sex" value="male" checked>男
        <input type="radio" name="sex" value="female">女
        <br>
    
        个人爱好:
        <input name="interests[]" type="checkbox" value="music">音乐
        <input name="interests[]" type="checkbox" value="game">游戏
        <input name="interests[]" type="checkbox" value="film">电影
        <br>
    
        个人相片
        <input type="hidden" name="MAX_FILE_SIZE" value="1024">
        <input type="file" name="myPicture" size="25" maxlength="100">
        <br>
    
        备注信息:
        <textarea name="remark" cols="30" rows="4" placeholder="请填写备注信息"></textarea>
        <br>
    
        <input type="submit" name="submit" value="注册">
        <input type="reset" name="cancel" value="重填">
    </form>

    功能实现文件

    实现登录功能

    login_process.php

    <?php
        include_once("function/database.php");
        // $userName = $_POST['userName'];
        // $password = $_POST['password'];
        $userName = addslashes($_POST['userName']);
        $password = addslashes($_POST['password']);
        getConnect();
        $loginSQL = "select * from users where userName='$userName' and password='$password'";
        echo $loginSQL;
        $resultLogin = mysql_query($loginSQL);
        if (mysql_num_rows($resultLogin) > 0) {
            echo "登录成功";
        } else {
            echo "登录失败";
        }
        closeConnect();
    ?>

    实现注册功能

    register.php

    <?php
        include_once("function/fileSystem.php");
        include_once("function/database.php");
    
        if (empty($_POST)) {
            exit("您提交的表单数据超过post_max_size! <br>");
        }
    
        // 判断输入密码与确认密码是否相同
        $password = $_POST['password'];
        $confirmPassword = $_POST['confirmPassword'];
        if ($password != $confirmPassword) {
            exit("输入的密码与确认密码不相等!");
        }
    
        $userName = $_POST['userName'];
        $domain = $_POST['domain'];
        $userName = $userName . $domain;
    
        // 判断用户名是否重复
        $userNameSQL = "select * from users where userName = '$userName'";
        getConnect();
        $resultSet = mysql_query($userNameSQL);
        if (mysql_num_rows($resultSet) > 0) {
            exit("用户名已被占用,请更换其他用户名");
        }
    
        $sex = $_POST['sex'];
        if (empty($_POST['interests'])) {
            $interests = "";
        } else {
            $interests = implode(";", $_POST['interests']);
        }
    
        $remark = $_POST['remark'];
        $myPictureName = $_FILES['myPicture']['name'];
    
        $registerSQL = "insert into users values(null, '$userName', '$password', '$sex', '$interests', '$myPictureName', '$remark')";
        $message = upload($_FILES['myPicture'], "uploads");
    
        if ($message == "上传成功" || $message == "没有上传") {
            mysql_query($registerSQL);
            $userID = mysql_insert_id();
            echo "注册成功<br>";
        } else {
            exit($message);
        }
    
        $userSQL = "select * from users where user_id = '$userID'";
        $userResult = mysql_query($userSQL);
        if ($user = mysql_fetch_array($userResult)) {
            echo "您的注册用户名为:" . $user['userName'];
        } else {
            exit("用户注册失败!");
        }
        closeConnect();

    函数文件(function文件夹)

    实现数据库连接与关闭的函数

    database.php

    <?php
        $databaseConnection = null;
        function getConnect() {
            $hosthome = "localhost";
            $database = "register";
            $userName = "root";
            $password = "123456";
            global $databaseConnection;
            $databaseConnection = @mysql_connect($hosthome, $userName, $password) or die (mysql_error());
            mysql_query("set names gbk");
            @mysql_select_db($database, $databaseConnection) or die (mysql_error());
        }
        
        function closeConnect() {
            global $databaseConnection;
            if ($databaseConnection) {
                @mysql_close($databaseConnection) or die (mysql_error());
            }
        }
    ?>

    实现文件上传的函数

    fileSystem.php

    <?php
        function upload($file, $filePath) {
            $error = $file['error'];
            switch ($error) {
                case 0:
                    $fileName = $file['name'];
                    $fileTemp = $file['tmp_name'];
                    $destination = $filePath . "/" . $fileName;
                    move_uploaded_file($fileTemp, $destination);
                    return "上传成功";
                case 1:
                    return "上传超过upload_max_filesize";
                case 2:
                    return "上传文件超过form的MAX_FILE_SIZE";
                case 3:
                    return "附件部分上传";
                case 4:
                    return "没有上传";
            }
        }
        ?>

    推荐学习:《PHP视频教程

    以上就是如何用PHP实现简单注册登录系统(附源码)的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:CSDN,如有侵犯,请联系admin@php.cn删除
    上一篇:如何用PHP解决高并发问题?(附源码) 下一篇:七道PHP经典面试题(附答案)
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【腾讯云】年中优惠,「专享618元」优惠券!• PHP实现的登录页面信息提示功能(实例分析)• php源码之搭建站点实现登录页面的方法• php如何实现登录页面
    1/1

    PHP中文网