Bootstrap 结合 PHP ,做简单的登录以及注册界面及功能
登录实现
HTML代码
<div class="container">
<?php if (isset($error_msg)): ?>
<div class="alert alert-danger" role="alert"><?php echo $error_msg; ?></div>
<?php endif ?>
<?php if (isset($success_msg)): ?>
<div class="alert alert-info" role="alert"><?php echo $success_msg; ?></div>
<?php endif ?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" autocomplete="on">
<div class="form-group">
<label for="administrator">管理员账号(11位手机号码)</label>
<input type="number" class="form-control" name="administrator" id="administrator" value="<?php echo isset($_POST['administrator']) ? $_POST['administrator'] : ''; ?>">
</div>
<div class="form-group">
<label for="password">密码</label>
<input type="password" class="form-control" name="password" id="password">
</div>
<button class="btn btn-info btn-md btn-block">登录</button>
</form>
</div>
CSS:
<link rel="stylesheet" type="text/css" href="css/Bootstrap.css">
<style type="text/css">
.container {
margin-top: 150px;
}
</style>
PHP:
function login () {
if (empty($_POST['administrator'])) {
$GLOBALS['error_msg'] = '请输入管理员账号';
return;
}
if (strlen($_POST['administrator']) !== 11) {
$GLOBALS['error_msg'] = '您输入的管理员账号不符合相关规定';
$_POST['administrator'] = '';
return;
}
if (empty($_POST['password'])) {
$GLOBALS['error_msg'] = '请输入密码';
return;
}
$connection = mysqli_connect('localhost', 'root', '密码', 'students_info_system');
if (!$connection) {
$GLOBALS['error_msg'] = '连接数据库失败';
return;
}
$query = mysqli_query($connection, 'select * from administrators');
if (!$query) {
$GLOBALS['error_msg'] = '查询数据失败';
return;
}
while ($administrator = mysqli_fetch_assoc($query)) {
$administrators[] = $administrator;
}
// var_dump($administrators);
for ($i = 0; $i < count($administrators); $i++) {
$administrator[] = $administrators[$i]['administrator'];
$passwords[] = $administrators[$i]['password'];
}
// var_dump($administrator);
// var_dump($passwords);
if (!in_array((string)$_POST['administrator'], $administrator)) {
$GLOBALS['error_msg'] = '您输入的管理员账号不存在';
return;
}
if (!in_array((string)$_POST['password'], $passwords)) {
$GLOBALS['error_msg'] = '密码错误';
return;
}
// 账号和密码都存在了----判断密码和账号与数据库中是否一致
$index = array_search($_POST['administrator'], $administrator);
if ((string)$_POST['password'] !== $passwords[$index]) {
$GLOBALS['error_msg'] = '密码错误';
return;
}
// 在数据库找到了相应的账号和密码
$GLOBALS['success_msg'] = '登录成功';
// 延时2秒执行后面的代码
time_sleep_until(time() + 2);
// 跳转到内容页面(并将账号一并传过去,区分用户账号以显示各个用户对应的界面)
header("Location: student_info.php?id={$_POST['administrator']}");
}
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
login();
}
注册实现
HTML:
<div class="container">
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" complete="on">
<?php if (isset($error_msg)): ?>
<div class="alert alert-danger" role="alert"><?php echo $error_msg; ?></div>
<?php endif ?>
<?php if (isset($success_msg)): ?>
<div class="alert alert-info" role="alert"><?php echo $success_msg; ?></div>
<?php endif ?>
<div class="form-group">
<label for="administrator">管理员账户(11位手机号码即可)</label>
<input type="number" class="form-control" name="administrator" id="administrator" value="<?php echo isset($_POST['administrator']) ? $_POST['administrator'] : ''; ?>">
</div>
<div class="form-group">
<label for="password">密码</label>
<input type="password" name="password" id="password" class="form-control" value="<?php echo isset($_POST['password']) ? $_POST['password'] : ''; ?>">
</div>
<div class="form-group">
<label for="check-pwd">确认密码</label>
<input type="password" name="check-pwd" id="check-pwd" class="form-control">
</div>
<button class="btn btn-info btn-block btn-md">注册</button>
</form>
</div>
CSS:
<link rel="stylesheet" type="text/css" href="css/Bootstrap.css">
<style type="text/css">
.container {
margin-top: 100px;
}
</style>
PHP:
function register () {
$connection = mysqli_connect('localhost', 'root', '密码', 'students_info_system');
if (!$connection) {
$GLOBALS['error_msg'] = '连接数据库失败';
return;
}
$query = mysqli_query($connection, 'select * from administrators');
if (!$query) {
$GLOBALS['error_msg'] = '查询数据失败';
return;
}
while ($administrator = mysqli_fetch_assoc($query)) {
$administrators[] = $administrator;
}
// var_dump($administrators);
// 获取数据库中已经注册的账号
for ($i = 0; $i < count($administrators); $i++) {
$administrator[] = $administrators[$i]['administrator'];
}
if (empty($_POST['administrator'])) {
$GLOBALS['error_msg'] = '请输入管理员账户';
return;
}
if (strlen($_POST['administrator']) !== 11) {
$GLOBALS['error_msg'] = '您输入的管理员账户不符合相关规定,请重新输入';
$_POST['administrator'] = '';
return;
}
// 判断该账号是否已被注册
if (in_array($_POST['administrator'], $administrator)) {
$GLOBALS['error_msg'] = '该账号已被注册,请另起账号';
return;
}
if (empty($_POST['password'])) {
$GLOBALS['error_msg'] = '请输入密码';
return;
}
if (empty($_POST['check-pwd'])) {
$GLOBALS['error_msg'] = '请确认密码';
return;
}
if ($_POST['check-pwd'] !== $_POST['password']) {
$GLOBALS['error_msg'] = '两次密码输入不一致,请重新确认密码';
return;
}
$administrator = $_POST['administrator'];
$password = $_POST['password'];$query = mysqli_query($connection, "insert into administrators values ({$administrator}, '{$password}')");
if (!$query) {
$GLOBALS['error_msg'] = '查询数据失败';
return;
}
$affected_rows = mysqli_affected_rows($query);
if ($affected_rows !== 1) {
$GLOBALS['error_msg'] = '插入数据失败';
}
$GLOBALS['success_msg'] = '注册成功';
// 延时2秒执行后面的语句
time_sleep_until(time() + 2);
header('Location: index.html');
}
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
register();
}
Bootstrap 结合 PHP ,做简单的登录以及注册界面及功能的更多相关文章
- [转]分别使用Node.js Express 和 Koa 做简单的登录页
本文转自:https://blog.csdn.net/weixin_38498554/article/details/79204240 刚刚学了Koa2,由于学的不是很深,并没有感受到网上所说的Koa ...
- Python 做简单的登录系统
案例 之 登录系统原创作品1 该随笔 仅插入部分代码:全部py文件源代码请从百度网盘自行下载! 链接:https://pan.baidu.com/s/1_sTcDvs5XEGDcnpoQEIrMg 提 ...
- 第十五篇-EditText做简单的登录框
TextView和EditText的简单应用. MainActivity.java package com.example.aimee.edittexttest; import android.sup ...
- JSP+MySQL最简单的登录和注册的实现 --Java Web温习
一.开发环境 开发工具:eclipse 2018-09 操作系统:win10 二.实现 1.目录结构: 2.数据库(创建tmp数据库,新建user表,user表结构如下) 3.功能简介 功能比较简单, ...
- python利用django实现简单的登录和注册,并利用session实现了链接数据库
利用session实现与数据库链接,登录模块(在views.py) def login(request): # return HttpResponseRedirect('/') # 判断是否post方 ...
- 使用md5加密算法完成简单的登录和注册功能
原理: 登录:后端controller层获取到客户的密码,通过下面代码:new Sha256Hash(pwd).toHex();将密码转换成md5散列,生成一个新的字符串与数据库的值进行比对,根据不同 ...
- SpringMVC demo 小例子,实现简单的登录和注册
1.创建一个动态的web工程 2.导入springMvc所需要的jar包(这里可以去网上找,资源有很多) 前两部就不详细描述了,后面才是正经代码~ 首先有一个web.xml文件,这个属于大配置文件,由 ...
- mybatis 和servlet使用MVC实现用户登录,注册,退出
普通实现: USerMapper.java: package com.bjsxt.mapper; import org.apache.ibatis.annotations.Param; import ...
- swing 实现用户登录注册界面(不使用数据库)
swing 实现用户登录注册界面(不使用数据库) 实现的功能 先说一下具体实现的功能吧:用户注册后会将注册的对象存入内存中,登录时会遍历注册的对象列表,判断是否登录成功: 登录和注册界面: 本次实验分 ...
随机推荐
- 安装关系型数据库MySQL和大数据处理框架Hadoop
1. 简述Hadoop平台的起源.发展历史与应用现状.列举发展过程中重要的事件.主要版本.主要厂商:国内外Hadoop应用的典型案例. (1)Hadoop的介绍: Hadoop最早起源于Nutch,N ...
- pycharm项目添加.gitignore忽略.idea文件夹
本地项目结构: .gitignore文件中添加: at_alsv_pro/.idea/SearchImage.iml at_alsv_pro/.idea/misc.xml at_alsv_pro/.i ...
- Java3d 案例程序
今天偶尔翻出了很久以前写的java3d程序,很怀念曾经探索java3d解析.渲染ifc数据的日子 package com.vfsd.test0621; import java.applet.Apple ...
- Hadoop YARN:调度性能优化实践(转)
https://tech.meituan.com/2019/08/01/hadoop-yarn-scheduling-performance-optimization-practice.html 文章 ...
- Spring MVC -- 转换器和格式化
在Spring MVC -- 数据绑定和表单标签库中我们已经见证了数据绑定的威力,并学习了如何使用表单标签库中的标签.但是,Spring的数据绑定并非没有任何限制.有案例表明,Spring在如何正确绑 ...
- 通过ssh登录到手机 Termux
安装Termux Termux官网:https://termux.com/ 安装openssh 安装好Termux后,点击图标进入,依次输入以下命令. 申请读写权限 termux-setup-stor ...
- [LeetCode] 168. Excel Sheet Column Title 求Excel表列名称
Given a positive integer, return its corresponding column title as appear in an Excel sheet. For exa ...
- [LeetCode] 403. Frog Jump 青蛙跳
A frog is crossing a river. The river is divided into x units and at each unit there may or may not ...
- oracle 添加字段
alter table 表名 add 新增字段名(类型+长度); #添加字段 alter table asset_orders add remark varchar2(255); #查看 descri ...
- 使用flask做网页的excel成绩分析
使用到的技术:pyecharts flask 首先 pip install flask 和下载pip install pyecharts==0.5.5 项目结构: 代码: from flask imp ...