PHP用户注册与登录【1】
需求分析
主要功能分为 用户注册、用户登录、用户退出、用户中心 四个部分。
用户注册
用户注册主要功能有:
- 注册信息表单填写界面 javascript 脚本初步检测用户输入的注册信息。
- 注册处理模块检测注册信息是否符合要求。
- 检测用户名是否已存在。
- 将注册信息写入数据表,注册成功。
用户登录
用户登录主要功能有:
- 登录表单界面 javascript 脚本初步检测用户输入的登录信息。
- 登录模块将用户输入信息与数据库数据进行核对。
- 登录信息正确,则提示登录成功,将用户设置为登录状态(session)。
- 登录信息不正确,则提示登录失败,用户可以再次尝试登录。
用户退出
用户退出主要功能有:
- 无条件注销 session 。
用户中心
用户退出主要功能有:
- 判断用户是否登录,如果没有登录,则转向到登录界面。
- 如果登录是登录状态,则读出用户相关信息。
数据表设计
根据功能需求分析,用于记用户信息的 user 表需要的字段如下:
| 字段名 | 数据类型 | 说明 |
|---|---|---|
| uid | mediumint(8) | 主键,自动增长 |
| username | char(15) | 注册用户名 |
| password | char(32) | MD5 加密后的密码 |
| varchar(40) | 用户 Email | |
| regdate | int(10) | 用户注册时间戳 |
建表 SQL 参考如下:
CREATE TABLE `user` (
`uid` mediumint(8) unsigned NOT NULL auto_increment,
`username` char(15) NOT NULL default '',
`password` char(32) NOT NULL default '',
`email` varchar(40) NOT NULL default '',
`regdate` int(10) unsigned NOT NULL default '',
PRIMARY KEY (`uid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
页面布局
各页面功能如下:
- reg.html:用户注册信息填写表单页面
- conn.php:数据库连接包含文件
- reg.php:用户注册处理程序
- login.html:用户登录表单页面
- login.php:用户登录表单页面
- my.php:用户中心
PHP用户注册与登录【1】的更多相关文章
- PHP 用户注册与登录
网站用户注册与登录是很常用的一个功能,本节教材就以此来演示一下 PHP 中如何开发用户注册与登录模块. 本节需要用到的重点 PHP 基础知识: PHP 中预定义 $_POST 和 $_GET 全局变量 ...
- day19面向对象 , 用户注册和登录
#!/usr/bin/env python# -*- coding:utf-8 -*- # 1.简述编写类和执行类中方法的流程."""编写:class Person: d ...
- Django学习笔记(9)—— 开发用户注册与登录系统
一,项目题目: 开发用户注册与登录系统 该项目主要练习使用Django开发一个用户注册与登录的系统,通过这个项目然后巩固自己这段时间所学习的Django知识. 二,项目需求: 开发一个简单的用户登录与 ...
- Android基于XMPP Smack Openfire下学习开发IM(一)实现用户注册、登录、修改密码和注销等
http://blog.csdn.net/h7870181/article/details/8653865 以前学习过用Scoket 建立聊天,简单的建立聊天是没问题的,但如果要实现多人复杂的聊天,后 ...
- openfire Android学习(一)----实现用户注册、登录、修改密码和注销等
以前学习过用Scoket 建立聊天,简单的建立聊天是没问题的,但如果要实现多人复杂的聊天,后台服务器代码就比较复杂,对于我这新手来讲就比较难了.后来在网上看到用openfire做服务器,利用强大的Sm ...
- Django学习笔记(16)——扩展Django自带User模型,实现用户注册与登录
一,项目题目:扩展Django自带User模型,实现用户注册与登录 我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统.此时我们需要实现包括用户注册,登录,用户认证,注销,修改密码等功能. ...
- 吴裕雄 python 人工智能——智能医疗系统后台用户注册、登录和初诊简约版代码展示
#用户注册.登录模块 #数据库脚本 CREATE TABLE usertable( userid number(8) primary key not null , username varchar(5 ...
- PHP用户注册与登录完整代码【4】
login.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:// ...
- Flask -- 使用数据库(Sqlite3)、用户注册、登录注销、修改密码
# 使用sqlite数据库 import sqlite3from contextlib import closing app.config.update( DATABASE = 'my.db', #相 ...
随机推荐
- Qt for Android开发环境搭建及测试过程记录
最近学习了Qt的QML编程技术,感觉相较于以前的QtGUI来说更方便一些,使用QML可以将界面与业务逻辑解耦,便于开发. QML支持跨平台,包括支持Android平台,因此可以使用Qt的QML进行An ...
- 泛型DAO与泛型Service
泛型Dao与Service 看了几个帖子,泛型Dao与Service的主要目的就是要减少重复代码.具体的说明如下: 1. 定义一个BaseDao接口,此接口包含了一些通用的DAO操作,例如:增加.删除 ...
- MarkdownPad2.5 注册码
邮箱: Soar360@live.com 授权秘钥: GBPduHjWfJU1mZqcPM3BikjYKF6xKhlKIys3i1MU2eJHqWGImDHzWdD6xhMNLGVpbP2M5SN6b ...
- Burp Suite 使用教程(上传突破利器)
Burp Suite是一个免费的网站攻击工具. 它包括proxy.spider.intruder.repeater四项功能.该程序使用Java写成,需要 JRE 1.4 以上版本 下载该程序的源代码, ...
- 阿里云部署nodejs服务器(windows)
花了大半个月做的网站终于要上线了,周围的同学们很多都在使用阿里云的服务器,我也入手了一台.考虑到自己不是很适应ubuntu的命令行界面,于是买了个windows的,上网搜了一下,似乎都是用linux来 ...
- rabbitmq
send端 import pika credentials = pika.PlainCredentials(') connection = pika.BlockingConnection(pika.C ...
- sql练习(mysql版)
学生表student 老师表teacher 课程表course 分数表test 1.数学比语文成绩高的所有学生 select a.sid from () a, () b where a.sid=b.s ...
- 枚举扩展方法获取枚举Description
枚举扩展方法 /// <summary> /// 扩展方法,获得枚举的Description /// </summary> /// <param name="v ...
- JQ倒计时天时分秒
<div id="times_wrap" class="time_num"> 距离现在时间: <div class="time_w& ...
- eclipse自动排版JSP问题
eclipse自动排版JSP非常难看,标签每行显示不完整,开发时很难受,下面设置一下这个就好多了: window-->preferences-->Web-->HTML Files-- ...