本帖最后由 shim 于 2025-10-1 10:51 编辑
二毛beget安装爱影视v1.0.4版的方法:
1.在爱影视根目录新建config.php文件,编辑此文件填入数据库信息
- <?php
- // 数据库配置文件
- // 数据库类型
- define('DB_TYPE', 'mysql');
- // 数据库主机地址
- define('DB_HOST', 'localhost');
- // 数据库名称
- define('DB_NAME', '');
- // 数据库用户名
- define('DB_USER', '');
- // 数据库密码
- define('DB_PASSWORD', '');
- // 数据库端口
- define('DB_PORT', '3306');
- // 数据库连接参数
- define('DB_PARAMS', array(
- PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
- PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
- PDO::ATTR_EMULATE_PREPARES => false
- ));
- // 创建数据库连接函数
- function getDbConnection() {
- $dsn = DB_TYPE . ':host=' . DB_HOST . ';dbname=' . DB_NAME . ';port=' . DB_PORT;
- $options = DB_PARAMS;
- try {
- $pdo = new PDO($dsn, DB_USER, DB_PASSWORD, $options);
- return $pdo;
- } catch (PDOException $e) {
- die('数据库连接失败: ' . $e->getMessage());
- }
- }
- ?>
复制代码
2.在电脑上新建install.sql文件,粘贴以下内容:
- -- 视频网站数据库初始化脚本
- -- 采用事务确保所有操作要么全部成功,要么全部失败
- START TRANSACTION;
- -- 设置字符集和排序规则
- SET NAMES utf8mb4;
- SET character_set_client = utf8mb4;
- SET character_set_connection = utf8mb4;
- SET character_set_results = utf8mb4;
- -- 1. 首先创建管理员表,确保系统基础功能可用
- CREATE TABLE IF NOT EXISTS `admin_users` (
- `id` int(11) NOT NULL AUTO_INCREMENT,
- `username` varchar(50) NOT NULL COMMENT '用户名',
- `password` varchar(255) NOT NULL COMMENT '密码',
- `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态:1启用,0禁用',
- `last_login_time` datetime DEFAULT NULL COMMENT '最后登录时间',
- `last_login_ip` varchar(50) DEFAULT NULL COMMENT '最后登录IP',
- PRIMARY KEY (`id`),
- UNIQUE KEY `username` (`username`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
- -- 2. 创建视频类型表(作为父表)
- CREATE TABLE IF NOT EXISTS `video_types` (
- `id` int(11) NOT NULL AUTO_INCREMENT,
- `name` varchar(50) NOT NULL COMMENT '类型名称',
- `code` varchar(50) NOT NULL COMMENT '类型代码',
- `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态:1启用,0禁用',
- `sort_order` int(11) NOT NULL DEFAULT '0' COMMENT '排序',
- PRIMARY KEY (`id`),
- UNIQUE KEY `code` (`code`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
- -- 3. 创建电影分类表(引用video_types)
- CREATE TABLE IF NOT EXISTS `movie_categories` (
- `id` int(11) NOT NULL AUTO_INCREMENT,
- `name` varchar(50) NOT NULL COMMENT '分类名称',
- `type` int(11) NOT NULL DEFAULT '1' COMMENT '关联video_types表的id',
- `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态:1启用,0禁用',
- PRIMARY KEY (`id`),
- KEY `fk_movie_categories_type` (`type`),
- CONSTRAINT `fk_movie_categories_type` FOREIGN KEY (`type`) REFERENCES `video_types` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
- -- 4. 创建电影信息表(核心内容表)
- CREATE TABLE IF NOT EXISTS `movies` (
- `id` int(11) NOT NULL AUTO_INCREMENT,
- `title` varchar(255) NOT NULL COMMENT '电影标题',
- `subtitle` varchar(255) DEFAULT NULL COMMENT '副标题',
- `category_id` int(11) NOT NULL COMMENT '分类ID',
- `type` int(11) NOT NULL DEFAULT '1' COMMENT '关联video_types表的id',
- `director` varchar(100) DEFAULT NULL COMMENT '导演',
- `actors` varchar(500) DEFAULT NULL COMMENT '演员',
- `region` varchar(50) DEFAULT NULL COMMENT '地区',
- `language` varchar(50) DEFAULT NULL COMMENT '语言',
- `release_year` year(4) DEFAULT NULL COMMENT '上映年份',
- `cover_img` varchar(255) DEFAULT NULL COMMENT '封面图片',
- `description` text COMMENT '剧情简介',
- `play_url` varchar(255) DEFAULT NULL COMMENT '播放地址(电影)',
- `total_episodes` int(11) DEFAULT '0' COMMENT '总集数(剧集)',
- `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态:1正常,0下架',
- `view_count` int(11) NOT NULL DEFAULT '0' COMMENT '观看次数',
- `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
- PRIMARY KEY (`id`),
- KEY `category_id` (`category_id`),
- KEY `fk_movies_type` (`type`),
- CONSTRAINT `fk_movies_type` FOREIGN KEY (`type`) REFERENCES `video_types` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
- -- 5. 创建剧集分集表
- CREATE TABLE IF NOT EXISTS `episodes` (
- `id` int(11) NOT NULL AUTO_INCREMENT,
- `movie_id` int(11) NOT NULL COMMENT '电影ID',
- `episode_num` int(11) NOT NULL COMMENT '集数',
- `episode_title` varchar(255) DEFAULT NULL COMMENT '分集标题',
- `play_url` varchar(255) NOT NULL COMMENT '播放地址',
- `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
- PRIMARY KEY (`id`),
- KEY `movie_id` (`movie_id`),
- CONSTRAINT `fk_episodes_movie` FOREIGN KEY (`movie_id`) REFERENCES `movies` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
- -- 6. 创建评论表
- CREATE TABLE IF NOT EXISTS `comments` (
- `id` int(11) NOT NULL AUTO_INCREMENT,
- `movie_id` int(11) NOT NULL COMMENT '电影ID',
- `username` varchar(50) NOT NULL COMMENT '用户名',
- `content` text NOT NULL COMMENT '评论内容',
- `ip_address` varchar(50) DEFAULT NULL COMMENT 'IP地址',
- `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态:1显示,0隐藏',
- `parent_id` int(11) DEFAULT NULL COMMENT '父评论ID(用于回复)',
- `reply_to_username` varchar(50) DEFAULT NULL COMMENT '被回复的用户名',
- `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '评论时间',
- PRIMARY KEY (`id`),
- KEY `movie_id` (`movie_id`),
- KEY `parent_id` (`parent_id`),
- CONSTRAINT `fk_comments_movie` FOREIGN KEY (`movie_id`) REFERENCES `movies` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
- CONSTRAINT `fk_comments_parent` FOREIGN KEY (`parent_id`) REFERENCES `comments` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
- -- 7. 创建轮播图表
- CREATE TABLE IF NOT EXISTS `banner` (
- `id` int(11) NOT NULL AUTO_INCREMENT,
- `movie_id` int(11) NOT NULL,
- `title` varchar(255) NOT NULL,
- `description` text,
- `image_url` varchar(255) NOT NULL,
- `sort_order` int(11) DEFAULT '0',
- `status` tinyint(1) DEFAULT '1' COMMENT '0: 禁用, 1: 启用',
- `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
- `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
- PRIMARY KEY (`id`),
- KEY `movie_id` (`movie_id`),
- CONSTRAINT `fk_banner_movie` FOREIGN KEY (`movie_id`) REFERENCES `movies` (`id`) ON DELETE CASCADE
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
- -- =======================
- -- 插入初始数据
- -- =======================
- -- 1. 插入默认管理员账户 (密码: admin)
- INSERT INTO `admin_users` (`username`, `password`) VALUES ('admin', '$2y$10$.EKgZGhShoOpYsJYjKb2iue5s0EWnOgSzXl6v6eeKt96su8FGw0my');
- -- 2. 插入初始视频类型数据
- INSERT INTO `video_types` (`name`, `code`, `sort_order`) VALUES
- ('电影', 'movie', 1),
- ('剧集', 'series', 2),
- ('动漫', 'anime', 3),
- ('综艺', 'variety', 4),
- ('其他', 'other', 5);
- -- 3. 插入默认分类数据
- INSERT INTO `movie_categories` (`name`, `type`) VALUES
- -- 电影分类
- ('动作片', 1), ('喜剧片', 1), ('爱情片', 1), ('科幻片', 1), ('恐怖片', 1), ('剧情片', 1), ('战争片', 1), ('记录片', 1), ('伦理片', 1), ('动画片', 1),
- -- 剧集分类
- ('国产剧', 2), ('香港剧', 2), ('韩国剧', 2), ('欧美剧', 2), ('台湾剧', 2), ('日本剧', 2), ('海外剧', 2), ('泰国剧', 2), ('短剧', 2),
- -- 动漫分类
- ('国产动漫', 3), ('日韩动漫', 3), ('欧美动漫', 3), ('港台动漫', 3), ('海外动漫', 3),
- -- 综艺分类
- ('大陆综艺', 4), ('港台综艺', 4), ('日韩综艺', 4), ('欧美综艺', 4),
- -- 其他分类
- ('默认', 5);
- -- 提交事务
- COMMIT;
- -- 脚本执行完成提示
- -- 数据库初始化成功!默认管理员账户:admin,密码:admin
复制代码
3.在https://cp.beget.com/mysql找到找到phpmyadmin管理入口,进去之后选择import导入install.sql数据表就可以了。
|