在线留言板实战项目说明文档

用python操作mysql完成一个在线留言板系统

  • 1.设计留言板表
  • 2.通过python语言实现

1 项目基本功能

留言板系统主要功能:(要求使用类实现)

  • 1.显示留言板:显示留言板内容 包括ID编号、昵称、留言信息
  • 2.发布留言:可以从留言板展示页面跳转到发布留言界面
  • 3.删除留言:在留言板展示界面直接点击删除链接即可删除留言
  • 4.修改留言:在留言板展示界面点击修改链接可以转到修改留言界面

2 项目基本结构

Messag_ board/
│  Message_board.py
│  README.md
│
├─.idea
│  │  .gitignore
│  │  misc.xml
│  │  modules.xml
│  │  pymysql.iml
│  │  workspace.xml
│  │
│  └─inspectionProfiles
│          profiles_settings.xml
│          Project_Default.xml
│
└─templatesadd.htmlindex.htmlupdate.html

3 运行环境

  • 系统:windows
  • 版本:python 3.9+
  • 其他:无

4 项目开发流程(学习用)

  1. 实现web的基本搭建 flask框架实现web的基本搭建
  • (1)安装flask框架

    pip install flask
    
  • (2)使用flask框架搭建web

  1. 创建留言板数据库
    留言板需要存储哪些数据?

    id nikename 昵称 info 留言信息 datetime 留言时间

创建表:

mysqlcreate table lyb(id int unsigned not null auto_increment primary key,nikename varchar(6) not null,info text not null,date datetime not null)engine=innodb default charset=utf8mb4;

插入数据:

  insert into lyb values(null,"Jas","帮我买一张票","2022-01-01 11:11:11");
  1. 连接数据库并发起请求 获取请求结果
  2. 设计留言板html显示界面 显示留言板
  3. 设计留言添加功能
  • (1) 设计留言添加html界面
  • (2) 将新留言信息插入数据库
  1. 设计留言删除功能
  2. 设计留言修改功能
  • (1)设计留言修改html界面
  • (2)将修改的留言更新到mysql中

5 项目代码

Message_board.py

"""
用python操作mysql完成一个在线留言板1.设计在线留言板表2.通过python语言实现
"""
import pymysql
from flask import Flask,render_template,request
import timeapp = Flask(__name__)# 连接数据库并发起请求 获取请求结果
def model(sql):# 1.链接mysql数据库db = pymysql.connect(host='localhost',user='root',password='123456',database='Jasmine',cursorclass=pymysql.cursors.DictCursor)try:# 2.创建游标对象cursor = db.cursor()# 3.执行sql语句res = cursor.execute(sql)db.commit()  # 在执行sql语句时,注意进行提交# 4.提取结果data = cursor.fetchall()if data:return dataelse:return resexcept:db.rollback()  # 当代码出现错误时,进行回滚finally:# 6.关闭数据库连接db.close()# 留言板列表 显示留言信息
@app.route("/")
def hello():# 1.获取所有的留言板数据# 2.把数据分配到模板中(html页面)row = model("select * from lyb")return render_template('index.html',data=row)# 定义视图 显示留言添加的页面
@app.route('/add')
def add():return render_template('add.html')# 定义视图函数 接收表单数据,完成数据的入库
@app.route('/insert', methods=['POST'])
def insert():# 1.接收表单数据data = request.form.to_dict()data['date'] = time.strftime('%Y-%m-%d %H:%M:%S')print(data)# 2.把数据添加到数据库sql = f'insert into lyb values(null,"{data["nikename"]}","{data["info"]}","{data["date"]}")'res = model(sql)print(res)# 3.成功后页面跳转到 留言列表界面if res:return '<script>alert("留言成功!");location.href="/"</script>'else:return '<script>alert("留言发布失败!");location.href="/add"</script>'# 删除 一行留言
@app.route("/delete")
def delete():id = request.args.get('id')sql = f'delete from lyb where id={id}'res = model(sql)if res:return '<script>alert("删除成功!");location.href="/"</script>'else:return '<script>alert("删除失败!");location.href="/"</script>'# 修改留言视图界面  不能修改id 即使在text文本框中修改了也没用
@app.route("/update")
def update():id = request.args.get('id')sql = f'select * from lyb where id={id}'res = model(sql)return render_template('update.html', data=res)# 修改留言视图函数 在数据库中修改留言内容
@app.route('/modify', methods=['POST'])
def modify():# 1.接收表单数据data = request.form.to_dict()data['date'] = time.strftime('%Y-%m-%d %H:%M:%S')# 2.把数据添加到数据库sql = f'update lyb set nikename="{data["nikename"]}",info="{data["info"]}",date="{data["date"]}" where id={int(data["id"])}'res = model(sql)# 3.成功后页面跳转到 留言列表界面if res:return '<script>alert("修改成功!");location.href="/"</script>'else:return '<script>alert("留言修改失败!");location.href="/"</script>'if __name__ == '__main__':app.run(debug=True, host='127.0.0.1', port='8080')

index.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>留言板列表</title>
</head>
<body><center><h1 style="color:dark;">留言列表</h1><h3><a href="/add">发布留言</a></h3><table border="1" width="800"><tr><th>ID编号</th><th>昵称</th><th>留言信息</th><th>留言时间</th><th>删除</th><th>修改</th></tr>{% for i in data %}<tr><td>{{i.id}}</td><td>{{i.nikename}}</td><td>{{i.info}}</td><td>{{i.date}}</td><td><a href="/delete?id={{i.id}}">删除</a></td><td><a href="/update?id={{i.id}}">修改</a></td></tr>{% endfor %}</table></center>
</body>
</html>

add.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>添加留言</title>
</head>
<body><center><h1 style="color: darkred">添加留言</h1><table><form action="/insert" method="post"><tr><td>昵称:</td><td><input type="text" name="nikename"></td></tr><tr><td>留言信息:</td><td><textarea name="info" id="" cols="30" rows="10"></textarea></td></tr><tr><td><button id="add">添加</button></td></tr></form></table></center>
</body>
</html>

update.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>修改留言</title>
</head>
<body><center><h1 style="color: darkred">修改留言</h1><table><form action="/modify" method="post"><tr><td>id:</td><td><textarea name="id" cols="20" rows="1">{{data[0].id}}</textarea></td></tr><tr><td>昵称:</td><td><textarea name="nikename" cols="20" rows="1">{{data[0].nikename}}</textarea></td></tr><tr><td>留言信息:</td><td><textarea name="info" cols="30" rows="10">{{data[0].info}}</textarea></td></tr><tr><td colspan="2"><button id="add">修改</button></td></tr></form></table></center>
</body>
</html>

python+Mysql+flask架构的在线留言板实战相关推荐

  1. 简易在线留言板(上)——树洞留言板

    简易在线留言板(上) 本文章属于原创,如若转载请标明出处: http://blog.csdn.net/FlorenceZKY/article/details/74295704  本系统开发的是一个极简 ...

  2. 大学生PHP简单网站制作方法 学生PHP网站作业 动态PHP毕业设计 PHP MYSQL在线留言板网站源码

    PHP MYSQL在线留言板网站作品 作品介绍 作品知识点 作品简介绍 作品演示 前端演示图 后台演示图 文件演示图 作品源地址 作品介绍 作品知识点 PHP+MYSQL.会员注册.会员登录.留言的增 ...

  3. 基于php的企业员工在线留言板

    mysql+php企业留言板是一款企业内部员工使用的在线留言板系统,让员工之间能进行良好的沟通和学习,也有助员工之间的学习和沟通,该系统采用了前台和后台的管理,该系统采用了前台和后台的管理,利用本站开 ...

  4. 使用 Python 的 flask 架构搭建一个简单web网站

    使用 Python 的 flask 架构搭建一个简单web网站 1.flask最简单框架,返回hello world: from flask import * app = Flask(__name__ ...

  5. php mysql 简单留言板_PHP+MySql实现一个简单的留言板

    跟着书学的,代码不是自己写的,但是都能理解,有时间自己去写个好看一点的吼吼吼-(不熟练花了一天的时间- 留言板是接触WEB开发的基础,写一个留言板需要知道前端的一些基础标签,对数据库有一个了解会基础S ...

  6. HTML+PHP+MYSQL实现一个简单的留言板

    提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 大家好,下面将为大家展示 基于HTML PHP MYSQL的留言板的设计与实现过程,适合初学者点击观看,以下我将会以笔者自称! 废话不 ...

  7. python学习——flask架构全家桶

    最近还是要写项目在CICC,做一个和前端交互的Flask项目,然后干脆学习一下怎么做架构师. 看看Flask项目全家桶的内容. 除了下面写的,在github上还有https://github.com/ ...

  8. php留言板实战,PHP留言本,非常适合新手实战操作!

    闲来没事,应学习群里面一些人的要求,花了几个小时写了一个简单的PHP留言本,很适合PHP新手学习,当然老手可以略过~~~~ 架构:PHP+MYSQL+Layui+smarty,实现简单的MVC构架,一 ...

  9. php留言板源码免mysql_精简美观的PHP+Mysql留言板 V.01

    本程序是夏日留言本的PHP+Mysql版本,版本号是V.01,基于PHP+Mysql架构,本留言板源码简单,结构小巧,有独立的后台管理,可进行在线回复,删除,锁定与解锁等功能,而且这个独立的管理后台也 ...

最新文章

  1. python 将列和索引的值变换_【编辑小组成长日记】Python学习第二期
  2. 为什么你写的代码糟透了?
  3. RocketMQ中的主从复制
  4. js如何获取文本节点的值?
  5. CentOS 6.3安装(详细图解教程)
  6. mysql 二进制日志查看_使用mysqlbinlog从二进制日志文件中查询mysql执行过的sql语句 (原)...
  7. eclipse 中自定义EL表达式时创建tld文件
  8. beta 圆桌桌 4
  9. Windows域环境下的网络问题
  10. python要学多久可以找到工作-学习Python多久能找到工作?老男孩Python开发培训
  11. 三星s7edge计算机软件,三星s7edge 官方6.0固件
  12. Linux基础入门教程-超详细
  13. Sawin软件研发之窗:《南郭先生新论》 - 使用 Google 工具栏进行发送
  14. ubuntu18.04加nvidia显卡安装在华硕笔记本上gx1050ti(飞行堡垒fx8)+cuda+cudnn+ttensorflow+keras
  15. [转载]SEO新足域名选择心决
  16. split,splice,slice 三者的用法
  17. 保护你的眼睛——设置电脑屏幕颜色和ClearType字体
  18. js封装QQ音乐api
  19. 数据结构(七)高级排序算法——归并、快速排序
  20. Linux platform

热门文章

  1. 2020中南大学研究生招生夏令营机试题题解
  2. 股票分析师如何在市场中利用Arron实现炒股
  3. CAN通讯程序C语言,嵌入式C语言环境下的CAN总线通讯协议
  4. ADS学习:电磁仿真设计
  5. Linux下使用命令解压.war文件的问题
  6. HTML5和CSS3开发第九章课后作业
  7. DOS命令运行java程序
  8. 基于ICMP的活跃主机发现技术
  9. 翻译www.djangobook.com之第十八章:自定义Django的admin界面
  10. 泰坦尼克号预测如何做到Kaggle排名前2%