个人商城系统开源(登录)

原文地址:个人商城系统开源(登录) - 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,用于登录测试

具体效果

尾声

今天的代码就分享到这里,后面几天就主要分享如何进行注册以及绑定邮箱的功能。

想看后面的内容还是麻烦大家点点关注,谢谢。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/726031.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024年华为OD机试真题-最长子字符串的长度(一)-Java-OD统一考试(C卷)

题目描述: 给你一个字符串 s,字符串s首尾相连成一个环形 ,请你在环中找出 o 字符出现了偶数次最长子字符串的长度。 输入描述: 输入是一串小写字母组成的字符串 输出描述: 输出是一个整数 补充说明: 1 <= s.length <= 5 x 10^5 s 只包含小写英文字母。 示例1 输入:…

小程序Taro框架 自定义底部Tabbar,处理自定义Tab栏切换卡顿、闪烁

最终效果 最近在用Taro框架开发一个小程序&#xff0c;有一个自定义底部Tabbar的需求&#xff0c;最终效果如下 起步 这页是我第一次接触自定义小程序底部Tabbar&#xff0c;所有第一选择必然是相看官方文档&#xff1a;微信小程序自定义 Tabbar | Taro 文档 &#xff08;如果…

上海亚商投顾:沪指震荡微涨 AI手机、军工板块集体走强

上海亚商投顾前言&#xff1a;无惧大盘涨跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。 一.市场情绪 沪指昨日低开后震荡回升&#xff0c;黄白二线分化明显&#xff0c;银行等权重板块走势较强。AI手机概念股持续…

Kernel - 内核同libc的关系

内核空间中有 libc 吗&#xff1f;我的意思是&#xff0c;你必须根据某个 libc 来构建内核&#xff0c;对吗&#xff1f;那么内核空间中是否有一个 libc&#xff08;可能是静态链接的&#xff09;&#xff1f; 如果有&#xff0c;这与用户态的 glibc 有什么关系&#xff1f; 它…

欧科云链:角力Web3.0,香港如何为合规设线?

在香港拥抱Web3.0的过程中,以欧科云链为代表的合规科技企业将凸显更大重要性。 ——据香港商报网报道 据香港明报、商报等媒体报道&#xff0c;港区全国政协兼香港选委界立法会议员吴杰庄在日前召开的全国两会上提出在大湾区建设国际中小企业创新Web3融资平台等提案&#xff0…

Android SDK2 (实操三个小目标)

书接上回&#xff1a;Android SDK 1&#xff08;概览&#xff09;-CSDN博客 今天讲讲三个实际练手内容&#xff0c;用的是瑞星微的sdk。 1 实操编译Android.bp 首先还是感叹下&#xff0c;现在的系统真的越搞越复杂&#xff0c;最早只有gcc&#xff0c;后面多了make&#xf…

Flink StreamGraph生成过程

文章目录 概要SteramGraph 核心对象SteramGraph 生成过程 概要 在 Flink 中&#xff0c;StreamGraph 是数据流的逻辑表示&#xff0c;它描述了如何在 Flink 作业中执行数据流转换。StreamGraph 是 Flink 运行时生成执行计划的基础。 使用DataStream API开发的应用程序&#x…

Netty权威指南——基础篇4 网络通信基础 备份

1 TCP粘包/拆包 TCP是个“流”协议&#xff0c;所谓流&#xff0c;就是没有界限的一串数字。可以想象河里流水&#xff0c;是连成一片的&#xff0c;其间没有分界线。TCP底层并不了解上层业务数据的具体含义&#xff0c;它会根据TCP缓冲区的实际情况进行包的划分&#xff0c;一…

OpenHarmony教程指南—Navigation开发 页面切换场景范例

简介 在应用开发时&#xff0c;我们常常遇到&#xff0c;需要在应用内多页面跳转场景时中使用Navigation导航组件做统一的页面跳转管理&#xff0c;它提供了一系列属性方法来设置页面的标题栏、工具栏以及菜单栏的各种展示样式。除此之外还拥有动态加载&#xff0c;navPathSta…

【算法笔记】LeetCode_3 无重复字符的最长字串

LeetCode_3 无重复字符的最长字串 LeetCode_3 无重复字符的最长字串 题目要求 给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长 子串 ** **的长度。 示例 1: 输入: s “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”&#xff0c;所以其长度为…

onlyoffice监听https

修改onlyoffice 在开始将您的ONLYOFFICE Docs切换到HTTPS协议之前&#xff0c;您需要创建一个安全证书和证书私钥。将它们放到安装ONLYOFFICE Docs的计算机上的一个文件夹中。 获得证书后&#xff0c;请执行以下步骤&#xff1a; 所有命令都应以管理员权限执行。要以管理员身份…

Redis中的整数集合数据结构为什么不支持降级操作?

Redis 的整数集合&#xff08;intset&#xff09;数据结构是用来存储整数值的集合&#xff0c;它可以存储 16、32 或 64 位的整数值&#xff0c;并且会根据存储的整数的大小自动调整内部存储的位数&#xff0c;以节省空间。例如&#xff0c;如果一个整数集合当前只包含 16 位的…

【PICO 4教程】Unity3D中实现对PICO 4的手柄按键响应

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址QQ群:398291828大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 最近在搞PICO 4开发,尝试了几种PICO 4的手柄按钮响应方法,这篇文章就总结一下几种按钮响应…

递推与递归DFS

&#xff1b;例题引入&#xff1a; 在跳楼梯问题中&#xff0c;我们假设每次可以跳1级或2级。如果我们想跳到第N级台阶&#xff0c;那么我们的最后一次跳跃只能是1级或2级。 如果我们最后一次跳1级&#xff0c;那么我们必须先跳到第N-1级台阶。由于跳到第N-1级台阶有f(N-1)种方…

【React】react的生命周期

react的生命周期 一、新生命周期1、挂载阶段1.1 constructor&#xff08;1&#xff09;在React组件挂载之前被调用&#xff08;2&#xff09; 初始化函数内部 state或者在this上挂载方法 1.2 getDerivedStateFromProps&#xff08;1&#xff09;为静态方法&#xff0c;不能访问…

快速了解Redis

Redis是什么&#xff1f; Redis是一个数据库&#xff0c;是一个跨平台的非关系型数据库&#xff0c;Redis完全开源&#xff0c;遵守BSD协议。它通过键值对(Key-Value)的形式存储数据。 它与mysql数据库有什么区别&#xff1f; redis通过键值对(Key-Value)的形式存储数据&…

springboot源码解析之Model和Map参数解析

springboot源码解析之Model和Map参数解析 标签:源码:springboot 测试代码 Controller public class HelloController {RequestMapping("/helloModelAndMap")public String helloModelAndMap(HttpServletRequest request, Model model, Map<String, Object> …

万物皆可Find My,伦茨科技ST17H6x芯片赋能产品苹果Find My功能

苹果的Find My功能使得用户可以轻松查找iPhone、Mac、AirPods以及Apple Watch等设备。如今Find My还进入了耳机、充电宝、箱包、电动车、保温杯等多个行业。苹果发布AirTag发布以来&#xff0c;大家都更加注重物品的防丢&#xff0c;苹果的 Find My 就可以查找 iPhone、Mac、Ai…

[ISP]DCT离散余弦变换及C++代码demo

1.基本定义 离散余弦变换(DCT for Discrete Cosine Transform) DCT&#xff08;Discrete Cosine Transform&#xff0c;离散余弦变换&#xff09;是一种常用的信号处理技术&#xff0c;广泛应用于图像处理、音频处理、视频压缩等领域。DCT将一个信号或数据序列从时域&#xf…

TensorFlow 与pytorch

TensorFlow 与pytorch 介绍 TensorFlow 的基本概念和使用场景python 搭建 tensorflow 介绍 pytorch 的基本概念和使用场景PyTorch中搭建模型 TensorFlow与pytorchTensorFlow与pytorch的区别TensorFlow与pytorch的联系TensorFlow与pytorch各自的开发团队TensorFlow与pytorch之外…