这是一个基于PHP+MySQL开发的单用户微博系统,适合个人使用。系统支持发布图文、视频、音频、文件等多种类型的微博内容,界面简洁美观,功能完善实用。
【主要功能】
-
用户管理:登录/退出、密码修改
-
微博发布:支持300字文本 + 图片(1-9张) + 视频 + 音频 + 文件
-
微博管理:删除、隐藏/显示、置顶/取消置顶、分享
-
搜索功能:支持按内容搜索微博
-
图片处理:自动压缩、九宫格排版、点击预览
-
大文件上传:支持分片上传,最大50MB
-
文件下载:动态链接防盗下载
-
响应式设计:自适应手机、平板、电脑
【环境要求】
-
PHP 7.0 或更高版本
-
MySQL 5.6 或更高版本
-
支持 mysqli 扩展
-
支持文件上传(php.ini 配置 upload_max_filesize 和 post_max_size 建议设置为 50M 以上)
【安装步骤】
-
将所有文件上传到网站根目录
-
确保 uploads 目录有写入权限(chmod 755 或 777)
-
导入database.sql数据到mysql
-
填写数据库信息
-
选择是否导入演示数据(30条微博)
-
点击"开始安装"按钮
-
安装完成后会自动跳转到首页
【默认账户】
用户名:admin
密码:admin888
重要提示:安装后请立即登录并修改默认密码!
【文件结构】
weibo/ # 网站根目录
├── index.php # 首页(微博列表、发布、搜索)
├── setting.php # 系统设置页面
├── upload.php # 文件上传处理
├── download.php # 文件下载处理
├── database.sql # 数据库结构文件
├── readme.txt # 本说明文件
├── inc/ # 公共文件目录
│ ├── conn.php # 数据库连接配置
│ ├── pubs.php # 公共函数库
│ ├── sqls.php # 数据库操作类
│ ├── js.js # 公共JavaScript函数
│ ├── index.css # 首页样式
│ ├── index.js # 首页脚本
│ ├── setting.css # 设置页样式
│ └── setting.js # 设置页脚本
└── uploads/ # 上传文件存储目录
└── temp/ # 分片上传临时目录
【数据库结构】
- wlog 表(微博表)
字段名 类型 说明 是否必填
id int(11) 微博ID(主键) 自动
content text 微博内容 是
files text 附件ID集合(JSON) 否
is_hidden tinyint(1) 是否隐藏(0:否 1:是) 否(默认0)
is_top tinyint(1) 是否置顶(0:否 1:是) 否(默认0)
create_time datetime 创建时间 是
- file 表(附件表)
字段名 类型 说明 是否必填
id int(11) 附件ID(主键) 自动
filename varchar(255) 原始文件名 是
filepath varchar(255) 存储路径 是
filetype varchar(50) 文件类型(image/video/ 是
audio/file)
filesize bigint(20) 文件大小(字节) 是
upload_time datetime 上传时间 是
【配置文件说明】
config.json.txt 存储系统配置(JSON格式),包含以下字段:
-
title: 网站标题
-
subtitle: 网站副标题
-
username: 登录用户名
-
password: 登录密码(MD5加密)
-
nickname: 用户昵称
-
avatar: 用户头像(预留字段)
【使用说明】
一、微博发布
-
登录后在首页可看到发布框
-
输入微博内容(最多300字,支持中文)
-
点击工具栏按钮上传附件:
-
图片:支持1-9张,自动压缩到1000px宽度
-
视频:单个,5-600秒,最大50MB
-
音乐:单个,5-600秒,最大50MB
-
文件:单个,最大50MB
- 点击"发布"按钮即可发布
二、微博管理
-
置顶:将重要微博置顶显示(同时只能有一条置顶)
-
隐藏:隐藏不想公开的微博(只有登录后才能看到)
-
删除:永久删除微博及其附件
-
分享:复制微博链接到剪贴板
三、图片展示
-
1张图片:单图展示
-
2、4张图片:2列网格
-
3、5-9张图片:3列网格(九宫格)
-
点击图片可放大预览
四、视频/音频播放
-
点击视频/音频缩略图
-
在弹出的遮罩层中播放
-
点击右上角×关闭
五、文件下载
-
点击文件卡片自动下载
-
使用动态链接,防止直接盗链
六、搜索功能
-
在搜索框输入关键词
-
按回车或点击"搜索"按钮
-
点击"重置"返回全部微博
七、系统设置
-
点击右上角"设置"按钮
-
可修改网站标题、副标题、昵称、用户名
-
修改密码需先输入原密码
-
点击"保存设置"完成修改
【技术特性】
-
原生开发:不依赖任何前端框架,纯HTML5+CSS3+原生JavaScript
-
响应式设计:自动适配手机、平板、电脑等不同屏幕
-
Ajax异步:所有数据交互使用Ajax,无刷新更新
-
图片压缩:前端自动压缩图片后再上传,节省空间和带宽
-
分片上传:大文件采用分片上传,支持断点续传
-
安全防护:SQL注入防护、XSS防护、登录验证
-
网址自动链接:微博内容中的网址自动转换为可点击链接
【注意事项】
-
首次安装后请立即修改默认密码
-
定期备份数据库和uploads目录
-
uploads目录必须有写入权限
-
如需支持更大的文件上传,请修改php.ini配置
-
视频和音频建议使用标准格式(MP4、MP3)以确保兼容性
【安全建议】
-
安装后立即修改默认账号密码
-
使用强密码(8位以上,包含字母、数字、符号)
-
定期更新密码
-
不要在公共网络环境下登录
-
及时更新PHP和MySQL版本
-
设置合理的文件上传大小限制
【常见问题】
Q: 安装时提示数据库连接失败?
A: 请检查数据库地址、用户名、密码是否正确,确保数据库服务已启动。
Q: 上传文件失败?
A: 检查uploads目录权限是否为755或777,php.ini中upload_max_filesize是否足够大。
Q: 图片不显示?
A: 检查uploads目录路径是否正确,文件是否存在。
Q: 忘记密码怎么办?
A: 编辑config.json.php文件,将password字段改为:5f4dcc3b5aa765d61d8327deb882cf99(对应密码:password)
Q: 如何卸载系统?
A: 删除所有文件和数据库即可。
【版本历史】
v1.0 (2024-01-01)
-
首次发布
-
实现基础微博功能
-
支持多媒体内容
-
响应式设计