# 漂流瓶系统 🌊
一个基于 Web 的匿名社交漂流瓶系统,让用户可以自由地扔出或捡起漂流瓶,分享心情,寻找共鸣。
## ✨ 系统概述
漂流瓶系统是一个轻量级的社交平台,旨在为用户提供一个安全、匿名的空间来分享内心感受、结交新朋友。它借鉴了“漂流瓶”这一经典概念,将用户的想法和情感以数字化的形式投入互联网的海洋,等待有缘人发现。
系统设计简洁直观,注重用户体验与互动性,同时将用户隐私和数据安全放在首位。无论您是想倾诉心事、寻求建议,还是仅仅想与陌生人分享一个有趣的想法,漂流瓶系统都能满足您的需求。
## 🚀 主要功能
### 👤 用户功能
- **注册与登录**:快速创建账户,安全登录。
- **个人资料**:管理个人信息,设置个性签名。
- **漂流瓶操作**:
- **扔瓶子**:写下心情或想法,投入大海。
- **捡瓶子**:随机捡起他人的漂流瓶。
- **互动**:评论、点赞漂流瓶。
- **记录**:查看自己扔出和捡到的瓶子。
- **性别标识**:男性漂流瓶 (蓝色 🔵),女性漂流瓶 (粉色 🌸)。
- **匿名选项**:可选择匿名发送,保护隐私。
### 💎 高级功能
- **VIP 会员**:购买 VIP 享受更多特权(如:更多扔/捡瓶次数、专属标识)。
- **签到系统**:每日签到获取积分,连续签到有额外奖励。
- **积分系统**:通过多种方式赚取积分,兑换系统特权。
- **IP 保护**:VIP 用户 IP 地址完全隐藏,普通用户部分隐藏。
- **消息中心**:接收系统通知和互动消息。
### 🛡️ 安全特性
- **防 XSS 攻击**:严格的输入过滤和内容安全策略 (CSP)。
- **防 SQL 注入**:使用参数化查询和输入验证。
- **防 CSRF 攻击**:实施 CSRF 令牌验证。
- **会话安全**:防止会话固定攻击。
- **数据验证**:前后端双重数据校验。
### ⚙️ 管理员功能
- **用户管理**:查看、封禁/解封用户,重置密码。
- **内容管理**:管理漂流瓶、评论,发布公告。
- **系统设置**:配置基础参数、积分规则、VIP 特权、安全策略。
- **数据统计**:监控用户活跃度、漂流瓶数据、系统运行状态。
## 🛠️ 技术栈
| 类型 | 技术 |
| :------- | :------------ |
| 前端 | HTML, CSS, JavaScript |
| 后端 | PHP 7.3+ |
| 数据库 | MySQL 5.6+ |
| Web 服务器 | Apache/Nginx |
## 🗄️ 数据库结构
系统主要数据表如下:
| 表名 | 描述 |
| :------------------- | :--------------- |
| `users` | 用户信息 |
| `bottles` | 漂流瓶内容 |
| `comments` | 评论数据 |
| `likes` | 点赞记录 |
| `pick_records` | 捡瓶记录 |
| `checkins` | 签到记录 |
| `points_history` | 积分历史 |
| `announcements` | 系统公告 |
| `admin_roles` | 管理员角色 |
| `admins` | 管理员账号 |
| `admin_login_logs` | 管理员登录日志 |
| `admin_operation_logs` | 管理员操作日志 |
| `daily_limits` | 用户每日限制 |
| `messages` | 消息中心 |
| `system_settings` | 系统配置 |
## 📦 安装与部署
### ✅ 环境要求
- **PHP**: 7.3 或更高版本 (推荐 7.4 / 8.0)
- **MySQL**: 5.6 或更高版本 / MariaDB 10.3+
- **Web 服务器**: Apache 2.4+ / Nginx 1.18+
- **PHP 扩展**: `mysqli`, `mbstring`, `json`
### 📜 部署步骤
1. **获取代码**
```bash
# 克隆仓库
git clone https://github.com/kggzs/Driftbottle.git /path/to/web/driftbottle
# 或者下载 ZIP 包解压
```
2. **配置 Web 服务器**
- 将网站根目录指向 `/path/to/web/driftbottle`。
- (可选) 配置 URL 重写规则(如果需要伪静态,但当前版本已不推荐)。
3. **数据库设置**
1. 创建数据库和用户:
```sql
CREATE DATABASE driftbottle CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'driftbottle_user'@'localhost' IDENTIFIED BY 'your_secure_password';
GRANT ALL PRIVILEGES ON driftbottle.* TO 'driftbottle_user'@'localhost';
FLUSH PRIVILEGES;
```
2. 导入数据库结构:
```bash
mysql -u driftbottle_user -p driftbottle < driftbottle.sql
```
3. 配置数据库连接:
- 编辑 `includes/config.php` 文件,修改以下常量:
```php
define('DB_HOST', 'localhost');
define('DB_USER', 'driftbottle_user');
define('DB_PASS', 'your_secure_password');
define('DB_NAME', 'driftbottle');
```
4. **设置目录权限**
- 确保 Web 服务器用户对以下目录有写入权限:
```bash
# 根据您的服务器环境调整命令
chmod -R 755 /path/to/web/driftbottle
chmod -R 777 /path/to/web/driftbottle/assets/images/uploads # 如果有上传功能
chmod -R 777 /path/to/web/driftbottle/logs
```
5. **IP 地址库配置 (可选)**
- 如需显示 IP 归属地,下载纯真 IP 数据库 `qqwry.dat`。
- 将 `qqwry.dat` 文件放入 `ip/` 或 `includes/ip/` 目录(请根据 `ip_location.php` 中的实际路径确认)。
6. **访问测试**
- 打开浏览器访问您的网站地址。
- **默认管理员账号**: `admin` / `admin`
- **重要**: 首次登录后请务必修改管理员密码!
- **安全提示**: `admin/test_admin.php` 和 `admin/reset_password.php` 是密码重置工具,**生产环境请务必删除**!
### ⬆️ 数据库更新
- 项目包含一些用于更新早期数据库结构的 SQL 脚本(位于 `sql/` 目录或根目录)。
- 如果您是从旧版本升级,请按需执行这些脚本:
```bash
mysql -u driftbottle_user -p driftbottle < sql/update_script_name.sql
```
- 主要更新脚本包括:
- `update_user_status.sql`: 添加用户封禁状态。
- `update_admin_roles.sql`: 更新管理员角色权限。
- `system_settings.sql`: 初始化或更新系统设置。
- `vip_points_settings.sql`: VIP 和积分相关配置。
- `update_announcements.sql`: 公告系统相关更新。
## ❓ 常见问题 (FAQ)
1. **页面显示空白或 500 错误?**
- 检查 PHP 错误日志 (`logs/php_errors.log` 或服务器配置的日志路径)。
- 确认 PHP 版本和所需扩展已安装并启用。
- 检查文件和目录权限。
2. **无法连接数据库?**
- 仔细核对 `includes/config.php` 中的数据库连接信息。
- 确保 MySQL 服务正在运行。
- 检查数据库用户权限是否正确授予。
3. **图片上传失败?**
- 检查 `assets/images/uploads` (或实际上传目录) 是否存在且具有写入权限。
- 检查 PHP 配置中的 `upload_max_filesize` 和 `post_max_size` 限制。
4. **IP 地址归属地显示不正确?**
- 确认 `qqwry.dat` 文件存在于正确路径且文件完整。
- 纯真 IP 库需要定期更新。
5. **API 调用失败或无响应?**
- 确认 API 请求格式为 `api.php?action=your_action`。
- 打开浏览器开发者工具 (F12),检查“网络 (Network)”和“控制台 (Console)”选项卡是否有错误信息。
- 检查服务器端的 PHP 或 Web 服务器错误日志。
- 尝试清除浏览器缓存。
## 🔌 API 接口
系统 API 通过 `api.php` 文件提供服务,使用 `action` GET 参数指定调用的端点。
**调用格式:**
```
GET /api.php?action=endpoint_nam
没有合适的资源?快使用搜索试试~ 我知道了~
全新漂流瓶系统源码 全开源 新UI 附安装教程.zip

共93个文件
php:31个
html:8个
sql:7个

1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 37 浏览量
2025-07-11
10:20:57
上传
评论
收藏 13.9MB ZIP 举报
温馨提示
全新漂流瓶系统源码 全开源 新UI 附安装教程 亲测可用 测试环境:Nginx + PHP7.4 + MySQL5.6 漂流瓶系统是一个轻量级的社交平台,旨在为用户提供一个安全、匿名的空间来分享内心感受、结交新朋友。它借鉴了“漂流瓶”这一经典概念,将用户的想法和情感以数字化的形式投入互联网的海洋,等待有缘人发现。 系统设计简洁直观,注重用户体验与互动性,同时将用户隐私和数据安全放在首位。无论您是想倾诉心事、寻求建议,还是仅仅想与陌生人分享一个有趣的想法,漂流瓶系统都能满足您的需求。
资源推荐
资源详情
资源评论























收起资源包目录



















































































































共 93 条
- 1
资源评论


智慧浩海
- 粉丝: 1w+
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 【IOS应用源码】ZeroIB.zip
- 【IOS应用源码】ZKRevealingTableCellView for iOS-1.zip
- 【IOS应用源码】ZKRevealingTableCellView for iOS.zip
- 【IOS应用源码】Zoo.zip
- 【IOS应用源码】贝塞尔曲线demo:一个运动的物体:PathMove for iOS.zip
- 【IOS应用源码】贝塞尔曲线demo:一个运动的物体:PathMove for iOS-1.zip
- 【IOS应用源码】巴黎自行车信息查询软件源码VeloParis100416_1_Distribution_1.1.zip
- 【IOS应用源码】彩色渐变LBGradient for iOS.zip
- 【IOS应用源码】本地化与国际化.zip
- 【IOS应用源码】窗口淡入淡出加视图旋转SwitchView.zip
- 【IOS应用源码】从GIF动画创建一个动态UIImages 对象.zip
- 【IOS应用源码】从上往下拉出现加载view,动态加载内容.zip
- 【IOS应用源码】从头教你不用IB写漂亮的程序 niblesshelloworld.zip
- 【IOS应用源码】从上往下拉动态加载.zip
- 【IOS应用源码】从上往下拉动态加载3.zip
- 【IOS应用源码】从下往下拉进行列表内容动态加载.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
