您现在的位置是:首页 > 技术教程 正文

phpstudy搭建本地网站:编写一个简单HTML前端页面

admin 阅读: 2024-03-15
后台-插件-广告管理-内容页头部广告(手机)

使用phpstudy搭建本地网站,编写一个简单HTML前端页面,实现:登录,注册,忘记密码,用户信息记录在MySQL中。登录后跳转到个人信息页面,要求显示登录用户名。有头像上传功能,上传成功后显示头像。

首先,我们要下载phpstudy(官网上下载即可)并打开Apache和MySQL。

注意:如果你已经在电脑上装了MySQL,是无法打开phpstudy上的MySQL的。此时,你需要按win+R打开服务框,输入services.msc。打开服务界面。找到你的MySQL,停止该服务。

然后,你就可以正常打开phpstudy中的MySQL。

接着,打开phpstudy中的数据库工具phpMyAdmin。如果,你没下载的话,点击软件管理中的网站程序,第一个就是。

打开后,输入你所创数据库的名称与密码。

登录后是这个界面:

接下来开始创建数据库,新建数据库user,点击后新建数据表,依次输入要创建的内容。并创建两个用户。

接下来,开始写代码。

(注意:代码一定要放在php根目录www下。)  

login.html




  用户登录
 


 

用户登录


 
   
   
   
   
   
   

忘记密码


   

还没有账号?注册


 

forgot_password.html




  重置密码
 


 

重置密码


 
   
   
   
   

记起密码了?登录


 

register.html




  用户注册
 


 

用户注册


 
   
   
   
   
   
   
   
   
   
   

已有账号?登录


 

touxiang.html



 
   
    个人信息页面
   
 
 
   

个人信息页面


   
     
        头像
     
     
       
         
         
         
       
     
   
   
 

upload.php

<?php

// 检查是否有上传文件

if(isset($_FILES["avatar"])){

    $file = $_FILES["avatar"];

    // 获取文件信息

    $fileName = $file["name"];

    $fileTmpName = $file["tmp_name"];

    $fileSize = $file["size"];

    $fileError = $file["error"];

    // 检查文件是否上传成功

    if($fileError === 0){

        // 指定上传目录

        $uploadDirectory = 'paper';

        // 生成唯一的文件名

        $newFileName = uniqid('', true) . '_' . $fileName;

        // 拼接文件路径

        $destination = $uploadDirectory . $newFileName;

        // 将文件从临时目录移动到上传目录

        if(move_uploaded_file($fileTmpName, $destination)){

            // 文件移动成功,则将文件路径保存到数据库中

            $dbHost = 'localhost';

            $dbUsername = 'xiaowang';

            $dbPassword = '123456';

            // 建立数据库连接

            $conn = mysqli_connect($dbHost, $dbUsername, $dbPassword);

            if(!$conn){

                die("数据库连接失败:" . mysqli_connect_error());

            }

            // 获取当前登录用户的用户名

            // 这里假设你已经在登录过程中将用户名保存在了会话中

            session_start();

            $username = $_SESSION['username'];

            // 更新数据库中的用户头像路径

            $query = "UPDATE users SET avatar='$destination' WHERE username='$username'";

            $result = mysqli_query($conn, $query);

            if($result){

                echo "头像上传成功!";

            } else {

                echo "头像上传失败:" . mysqli_error($conn);

            }

            // 关闭数据库连接

            mysqli_close($conn);

        } else{

            echo "移动文件失败!";

        }

    } else {

        echo "文件上传失败!";

    }

}

?>

process.php

<?php

// 获取表单数据

$username = $_POST['username'];

$password = $_POST['password'];

$email = $_POST['email'];

// 建立数据库连接

$servername = "localhost";

$dbusername = "xiaowang";

$dbpassword = "123456";

$conn = new mysqli($servername, $dbusername, $dbpassword);

// 检查连接是否成功

if ($conn->connect_error) {

    die("连接失败: " . $conn->connect_error);

}

// 处理登录请求

if (isset($_POST['login'])) {

    // 根据用户名和密码从数据库中检查匹配的记录

    $sql = "SELECT * FROM users WHERE username = '$username' AND password = '$password'";

    $result = $conn->query($sql);

    // 如果存在匹配的记录,将用户信息存储到会话中,并重定向到个人信息页面

    if ($result->num_rows > 0) {

        session_start();

        $_SESSION['username'] = $username;

        header("Location: touxiang.html");

        exit;

    } else {

        echo "用户名或密码不正确";

    }

}

// 处理注册请求

if (isset($_POST['register'])) {

    // 将用户名、密码和邮箱信息插入到数据库中的「users」表中

    $sql = "INSERT INTO users (username, password, email) VALUES ('$username', '$password', '$email')";

    if ($conn->query($sql) === TRUE) {

        echo "注册成功";

    } else {

        echo "注册失败: " . $conn->error;

    }

}

// 处理忘记密码请求

if (isset($_POST['forgot_password'])) {

    // 根据用户提交的邮箱在数据库中查找匹配的记录

    $sql = "SELECT * FROM users WHERE email = '$email'";

    $result = $conn->query($sql);

 // 如果存在匹配的记录,发送重置密码链接至用户邮箱

    if ($result->num_rows > 0) {

        // 发送重置密码链接的代码

        echo "重置密码链接已发送至您的邮箱";

    } else {

        echo "该邮箱未注册";

    }

}

// 关闭数据库连接

$conn->close();

?>

login.php

<?php

// 获取表单数据

$username = $_POST['username'];

$password = $_POST['password'];

$email = $_POST['email'];

// 建立数据库连接

$servername = "localhost";

$dbusername = "xiaowang";

$dbpassword = "123456";

$conn = new mysqli($servername, $dbusername, $dbpassword);

// 检查连接是否成功

if ($conn->connect_error) {

    die("连接失败: " . $conn->connect_error);

}

// 处理登录请求

if (isset($_POST['login'])) {

    // 根据用户名和密码从数据库中检查匹配的记录

    $sql = "SELECT * FROM users WHERE username = '$username' AND password = '$password'";

    $result = $conn->query($sql);

// 如果存在匹配的记录,将用户信息存储到会话中,并重定向到个人信息页面

    if ($result->num_rows > 0) {

        session_start();

        $_SESSION['username'] = $username;

        header("Location: upload.php");

        exit;

    } else {

        echo "用户名或密码不正确";

    }

}

// 处理注册请求

if (isset($_POST['register'])) {

    // 将用户名、密码和邮箱信息插入到数据库中的「users」表中

    $sql = "INSERT INTO users (username, password, email) VALUES ('$username', '$password', '$email')";

    if ($conn->query($sql) === TRUE) {

        echo "注册成功";

    } else {

        echo "注册失败: " . $conn->error;

    }

}

// 处理忘记密码请求

if (isset($_POST['forgot_password'])) {

    // 根据用户提交的邮箱在数据库中查找匹配的记录

    $sql = "SELECT * FROM users WHERE email = '$email'";

    $result = $conn->query($sql);

    // 如果存在匹配的记录,发送重置密码链接至用户邮箱

    if ($result->num_rows > 0) {

        // 发送重置密码链接的代码

        echo "重置密码链接已发送至您的邮箱";

    } else {

        echo "该邮箱未注册";

    }

}

// 关闭数据库连接

$conn->close();

?>

标签:
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

在线投稿:投稿 站长QQ:1888636

后台-插件-广告管理-内容页尾部广告(手机)
关注我们

扫一扫关注我们,了解最新精彩内容

搜索