原文地址:个人商城系统开源(登录) - Pleasure的博客
下面是正文内容:
前言
由于近期实在没有什么话题可写和一些有趣的项目教程可以分享。所以我只能决定将我自己亲手编写的一个迷你迷你商城系统进行开源。
也就是放在我博客右边的“我的另一个网站”(由于实在没什么生意只能开源了,充当教材)
开始分享一些前后端全栈的内容,希望对你们有所帮助。
虽然是迷你的商城系统,但是由于要实现每一部分各自的功能还是非常复杂的,比如用户的注册登录,手机号邮箱的绑定,充值支付功能的实现等等。
所以在这里我会花一周的时间按照功能进行划分来逐块解释,也好水一周的文章。顺便可以迁个站,整理一下代码。
看之前还是麻烦大家点点关注,谢谢!(就不选仅粉丝可见了)
如果在实现上存在什么问题,可以联系我。
正文
开始之前
事先说明一下,由于主要为的是追求后端功能的实现,所以前端的样式就选择的是bootstrap网页中的示范样例,在此基础上进行了修改自用。
而且并没有考虑要投入实际应用所需要注意的一些计算机安全方面的相关内容。
今天分享的主要是用户的注册和登录功能。
但是由于功能之间是需要相关联的,所以代码中可能会涉及到其他的一些功能具体等后面遇到后再说。
实现具体作用的源码我会在这里上传一份,大家根据自己需要进行修改即可。
转载请注明出处!
过程分析
一个index1.html——注册登录界面
一些重定向文件——loginsuccess.php loginfail.php loginexit.php logout.php loginaction.php
文件功能顾名思义
输入用户名密码后点击登录,跳转到loginaction.php文件,连接数据库判断用户名密码是否存在,然后根据实际情况跳转到success,fail等跳转文件,最后定向到面板或是登录界面。
一个index.php文件——登入之后的dashboard文件
一些css,js文件(模版外观的装饰,前段功能的实现)
原理解释
由于创作时间较长,具体的细节已经有点遗忘了。(下面的叙述出于印象)
大致就是,登录的时候创建一个session,需要切换账号的时候取消session
当然可以根据需要换成cookie的模式
其中涉及到一些数据库语言需要有一点这方面的基础
<?php
require "../conn.php";
$username = $_POST['username'];
$password = $_POST['password'];
$stmt = $conn->prepare("SELECT username,password FROM content WHERE username = ? AND password = ?");
$stmt->bind_param("ss", $username, $password);
$stmt->execute();
$res = $stmt->get_result();
$rows = $res->num_rows;
$stmt1 = $conn->prepare("SELECT endtime FROM subscribe WHERE username = ?");
$stmt1->bind_param("s", $username);
$stmt1->execute();
$res1 = $stmt1->get_result();
$row = $res1->fetch_assoc();
$endtime = new DateTime($row['endtime']);
$now = new DateTime();
if ($rows == 1) {
session_start();
$_SESSION['username'] = $username;
if ($endtime->format('Y-m-d H:i:s') == '-0001-11-30 00:00:00') {
$_SESSION['remaining'] = DateInterval::createFromDateString('0 days');
} else {
$_SESSION['remaining'] = $now->diff($endtime, true);
}
header('refresh: 0;url=./loginsuccess.php');
exit;
} else {
header('refresh: 0;url=./loginfail.php');
}
?>
上面是loginaction.php文件的内容,在形式上我对代码稍微进行了修改,以防止sql的注入。还有为后续的订阅功chatgpt镜像站的功能做铺垫。
源码
由于模版选用的是网上找的一些前段做的好的模版,所以css,js的文件内容篇幅较大,不适合全部大段粘贴。所以采取压缩包的形式。后续会不断进行更新,知道全部上传。
下载地址:
链接:百度网盘 请输入提取码
提取码:shop
数据库信息需要根据实际情况修改一下,还需要创建一个subscribe表
预先储存用户名admin,密码admin,用于登录测试
具体效果
尾声
今天的代码就分享到这里,后面几天就主要分享如何进行注册以及绑定邮箱的功能。
想看后面的内容还是麻烦大家点点关注,谢谢。