找回密码
 注册
搜索
免费空间 免费域名 免费AI 老牌主机商首月仅1美分!27美元/年!Namecheap优惠码Spaceship优惠码
楼主: shim

[程序代码] (2025-10-2更新!!!)分享一个轻量简洁影视网站源码

[复制链接]
 楼主| 发表于 前天 10:35 | 显示全部楼层
本帖最后由 shim 于 2025-10-1 10:51 编辑
efc88ff45580620 发表于 2025-9-30 21:13
不行啊,已经换了5个空间了

二毛beget安装爱影视v1.0.4版的方法:

1.在爱影视根目录新建config.php文件,编辑此文件填入数据库信息
  1. <?php
  2. // 数据库配置文件
  3. // 数据库类型
  4. define('DB_TYPE', 'mysql');
  5. // 数据库主机地址
  6. define('DB_HOST', 'localhost');
  7. // 数据库名称
  8. define('DB_NAME', '');
  9. // 数据库用户名
  10. define('DB_USER', '');
  11. // 数据库密码
  12. define('DB_PASSWORD', '');
  13. // 数据库端口
  14. define('DB_PORT', '3306');
  15. // 数据库连接参数
  16. define('DB_PARAMS', array(
  17.     PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
  18.     PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
  19.     PDO::ATTR_EMULATE_PREPARES => false
  20. ));

  21. // 创建数据库连接函数
  22. function getDbConnection() {
  23.     $dsn = DB_TYPE . ':host=' . DB_HOST . ';dbname=' . DB_NAME . ';port=' . DB_PORT;
  24.     $options = DB_PARAMS;
  25.     try {
  26.         $pdo = new PDO($dsn, DB_USER, DB_PASSWORD, $options);
  27.         return $pdo;
  28.     } catch (PDOException $e) {
  29.         die('数据库连接失败: ' . $e->getMessage());
  30.     }
  31. }
  32. ?>
复制代码


2.在电脑上新建install.sql文件,粘贴以下内容:
  1. -- 视频网站数据库初始化脚本
  2. -- 采用事务确保所有操作要么全部成功,要么全部失败
  3. START TRANSACTION;

  4. -- 设置字符集和排序规则
  5. SET NAMES utf8mb4;
  6. SET character_set_client = utf8mb4;
  7. SET character_set_connection = utf8mb4;
  8. SET character_set_results = utf8mb4;

  9. -- 1. 首先创建管理员表,确保系统基础功能可用
  10. CREATE TABLE IF NOT EXISTS `admin_users` (
  11.   `id` int(11) NOT NULL AUTO_INCREMENT,
  12.   `username` varchar(50) NOT NULL COMMENT '用户名',
  13.   `password` varchar(255) NOT NULL COMMENT '密码',
  14.   `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态:1启用,0禁用',
  15.   `last_login_time` datetime DEFAULT NULL COMMENT '最后登录时间',
  16.   `last_login_ip` varchar(50) DEFAULT NULL COMMENT '最后登录IP',
  17.   PRIMARY KEY (`id`),
  18.   UNIQUE KEY `username` (`username`)
  19. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

  20. -- 2. 创建视频类型表(作为父表)
  21. CREATE TABLE IF NOT EXISTS `video_types` (
  22.   `id` int(11) NOT NULL AUTO_INCREMENT,
  23.   `name` varchar(50) NOT NULL COMMENT '类型名称',
  24.   `code` varchar(50) NOT NULL COMMENT '类型代码',
  25.   `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态:1启用,0禁用',
  26.   `sort_order` int(11) NOT NULL DEFAULT '0' COMMENT '排序',
  27.   PRIMARY KEY (`id`),
  28.   UNIQUE KEY `code` (`code`)
  29. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

  30. -- 3. 创建电影分类表(引用video_types)
  31. CREATE TABLE IF NOT EXISTS `movie_categories` (
  32.   `id` int(11) NOT NULL AUTO_INCREMENT,
  33.   `name` varchar(50) NOT NULL COMMENT '分类名称',
  34.   `type` int(11) NOT NULL DEFAULT '1' COMMENT '关联video_types表的id',
  35.   `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态:1启用,0禁用',
  36.   PRIMARY KEY (`id`),
  37.   KEY `fk_movie_categories_type` (`type`),
  38.   CONSTRAINT `fk_movie_categories_type` FOREIGN KEY (`type`) REFERENCES `video_types` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
  39. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

  40. -- 4. 创建电影信息表(核心内容表)
  41. CREATE TABLE IF NOT EXISTS `movies` (
  42.   `id` int(11) NOT NULL AUTO_INCREMENT,
  43.   `title` varchar(255) NOT NULL COMMENT '电影标题',
  44.   `subtitle` varchar(255) DEFAULT NULL COMMENT '副标题',
  45.   `category_id` int(11) NOT NULL COMMENT '分类ID',
  46.   `type` int(11) NOT NULL DEFAULT '1' COMMENT '关联video_types表的id',
  47.   `director` varchar(100) DEFAULT NULL COMMENT '导演',
  48.   `actors` varchar(500) DEFAULT NULL COMMENT '演员',
  49.   `region` varchar(50) DEFAULT NULL COMMENT '地区',
  50.   `language` varchar(50) DEFAULT NULL COMMENT '语言',
  51.   `release_year` year(4) DEFAULT NULL COMMENT '上映年份',
  52.   `cover_img` varchar(255) DEFAULT NULL COMMENT '封面图片',
  53.   `description` text COMMENT '剧情简介',
  54.   `play_url` varchar(255) DEFAULT NULL COMMENT '播放地址(电影)',
  55.   `total_episodes` int(11) DEFAULT '0' COMMENT '总集数(剧集)',
  56.   `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态:1正常,0下架',
  57.   `view_count` int(11) NOT NULL DEFAULT '0' COMMENT '观看次数',
  58.   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  59.   PRIMARY KEY (`id`),
  60.   KEY `category_id` (`category_id`),
  61.   KEY `fk_movies_type` (`type`),
  62.   CONSTRAINT `fk_movies_type` FOREIGN KEY (`type`) REFERENCES `video_types` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
  63. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

  64. -- 5. 创建剧集分集表
  65. CREATE TABLE IF NOT EXISTS `episodes` (
  66.   `id` int(11) NOT NULL AUTO_INCREMENT,
  67.   `movie_id` int(11) NOT NULL COMMENT '电影ID',
  68.   `episode_num` int(11) NOT NULL COMMENT '集数',
  69.   `episode_title` varchar(255) DEFAULT NULL COMMENT '分集标题',
  70.   `play_url` varchar(255) NOT NULL COMMENT '播放地址',
  71.   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  72.   PRIMARY KEY (`id`),
  73.   KEY `movie_id` (`movie_id`),
  74.   CONSTRAINT `fk_episodes_movie` FOREIGN KEY (`movie_id`) REFERENCES `movies` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
  75. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

  76. -- 6. 创建评论表
  77. CREATE TABLE IF NOT EXISTS `comments` (
  78.   `id` int(11) NOT NULL AUTO_INCREMENT,
  79.   `movie_id` int(11) NOT NULL COMMENT '电影ID',
  80.   `username` varchar(50) NOT NULL COMMENT '用户名',
  81.   `content` text NOT NULL COMMENT '评论内容',
  82.   `ip_address` varchar(50) DEFAULT NULL COMMENT 'IP地址',
  83.   `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态:1显示,0隐藏',
  84.   `parent_id` int(11) DEFAULT NULL COMMENT '父评论ID(用于回复)',
  85.   `reply_to_username` varchar(50) DEFAULT NULL COMMENT '被回复的用户名',
  86.   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '评论时间',
  87.   PRIMARY KEY (`id`),
  88.   KEY `movie_id` (`movie_id`),
  89.   KEY `parent_id` (`parent_id`),
  90.   CONSTRAINT `fk_comments_movie` FOREIGN KEY (`movie_id`) REFERENCES `movies` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  91.   CONSTRAINT `fk_comments_parent` FOREIGN KEY (`parent_id`) REFERENCES `comments` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
  92. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

  93. -- 7. 创建轮播图表
  94. CREATE TABLE IF NOT EXISTS `banner` (
  95.   `id` int(11) NOT NULL AUTO_INCREMENT,
  96.   `movie_id` int(11) NOT NULL,
  97.   `title` varchar(255) NOT NULL,
  98.   `description` text,
  99.   `image_url` varchar(255) NOT NULL,
  100.   `sort_order` int(11) DEFAULT '0',
  101.   `status` tinyint(1) DEFAULT '1' COMMENT '0: 禁用, 1: 启用',
  102.   `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  103.   `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  104.   PRIMARY KEY (`id`),
  105.   KEY `movie_id` (`movie_id`),
  106.   CONSTRAINT `fk_banner_movie` FOREIGN KEY (`movie_id`) REFERENCES `movies` (`id`) ON DELETE CASCADE
  107. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

  108. -- =======================
  109. -- 插入初始数据
  110. -- =======================

  111. -- 1. 插入默认管理员账户 (密码: admin)
  112. INSERT INTO `admin_users` (`username`, `password`) VALUES ('admin', '$2y$10$.EKgZGhShoOpYsJYjKb2iue5s0EWnOgSzXl6v6eeKt96su8FGw0my');

  113. -- 2. 插入初始视频类型数据
  114. INSERT INTO `video_types` (`name`, `code`, `sort_order`) VALUES
  115. ('电影', 'movie', 1),
  116. ('剧集', 'series', 2),
  117. ('动漫', 'anime', 3),
  118. ('综艺', 'variety', 4),
  119. ('其他', 'other', 5);

  120. -- 3. 插入默认分类数据
  121. INSERT INTO `movie_categories` (`name`, `type`) VALUES
  122. -- 电影分类
  123. ('动作片', 1), ('喜剧片', 1), ('爱情片', 1), ('科幻片', 1), ('恐怖片', 1), ('剧情片', 1), ('战争片', 1), ('记录片', 1), ('伦理片', 1), ('动画片', 1),
  124. -- 剧集分类
  125. ('国产剧', 2), ('香港剧', 2), ('韩国剧', 2), ('欧美剧', 2), ('台湾剧', 2), ('日本剧', 2), ('海外剧', 2), ('泰国剧', 2), ('短剧', 2),
  126. -- 动漫分类
  127. ('国产动漫', 3), ('日韩动漫', 3), ('欧美动漫', 3), ('港台动漫', 3), ('海外动漫', 3),
  128. -- 综艺分类
  129. ('大陆综艺', 4), ('港台综艺', 4), ('日韩综艺', 4), ('欧美综艺', 4),
  130. -- 其他分类
  131. ('默认', 5);

  132. -- 提交事务
  133. COMMIT;

  134. -- 脚本执行完成提示
  135. -- 数据库初始化成功!默认管理员账户:admin,密码:admin
复制代码


3.在https://cp.beget.com/mysql找到找到phpmyadmin管理入口,进去之后选择import导入install.sql数据表就可以了。
发表于 前天 14:18 | 显示全部楼层
shim 发表于 2025-10-1 10:35
二毛beget安装爱影视v1.0.4版的方法:

1.在爱影视根目录新建config.php文件,编辑此文件填入数据库信息

我提交倒入就是:
Error
Static analysis:

14 errors were found during analysis.

Unexpected beginning of statement. (near "开始交易;" at position 43)
Unexpected beginning of statement. (near "设置名称" at position 65)
Unexpected beginning of statement. (near "utf8mb4;" at position 70)
Unexpected beginning of statement. (near "设置字符集客户端" at position 80)
Unexpected beginning of statement. (near "utf8mb4;" at position 91)
Unexpected beginning of statement. (near "设置字符集连接" at position 101)
Unexpected beginning of statement. (near "utf8mb4;" at position 111)
Unexpected beginning of statement. (near "设置字符集结果" at position 121)
Unexpected beginning of statement. (near "utf8mb4;" at position 131)
Unexpected beginning of statement. (near "如果不存在则创建表" at position 169)
Unexpected beginning of statement. (near "`admin_users`" at position 178)
Unexpected beginning of statement. (near "(" at position 191)
Unexpected beginning of statement. (near "`id`" at position 196)
Unrecognized statement type. (near "int" at position 201)
SQL query:

-- 视频网站数据库初始化脚本 -- 聘用事务确保所有操作或全部成功,或全部失败 开始交易; -- 字符集和排序规则 设置名称 utf8mb4; 设置字符集客户端 = utf8mb4; 设置字符集连接 = utf8mb4; 设置字符集结果 = utf8mb4; -- 1.首先创建管理员表,确保系统基础功能可用 如果不存在则创建表`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', 主键(`id`), 唯一键 `用户名` (`用户名`) ) 引擎=InnoDB 默认字符集=utf8mb4

MySQL said: Documentation

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '开始交易;

-- 字符集和排序规则
设置名称 utf8mb4;
设置å' at line 3
发表于 前天 16:32 | 显示全部楼层
shim 发表于 2025-10-1 10:35
二毛beget安装爱影视v1.0.4版的方法:

1.在爱影视根目录新建config.php文件,编辑此文件填入数据库信息

能加个2线路吗,也就是能采集其他采集站的教程
 楼主| 发表于 前天 17:42 | 显示全部楼层
efc88ff45580620 发表于 2025-10-1 14:18
我提交倒入就是:
Error
Static analysis:

不应该啊,我这里beget能正常导入,你的怎么会不行呢?
发表于 前天 17:44 | 显示全部楼层
shim 发表于 2025-10-1 17:42
不应该啊,我这里beget能正常导入,你的怎么会不行呢?

是不是我的文件格式有问题?
 楼主| 发表于 前天 17:51 | 显示全部楼层
麻木先生 发表于 2025-10-1 16:32
能加个2线路吗,也就是能采集其他采集站的教程

我只发现电影天堂的资源是不带广告,所以只添加了这个。
如果你自己想添加其他站的资源也行,最主要就是要json中的类型ID对应网站上的类型ID和分类ID就可以,具体的我也说不清楚,要看采集站给出的JSON数据。。。
 楼主| 发表于 前天 17:53 | 显示全部楼层
efc88ff45580620 发表于 2025-10-1 17:44
是不是我的文件格式有问题?

有可能
发表于 前天 17:56 | 显示全部楼层

记事本修改的文件名,要不你传个文件吧
 楼主| 发表于 前天 18:04 | 显示全部楼层
efc88ff45580620 发表于 2025-10-1 17:56
记事本修改的文件名,要不你传个文件吧

我是直接导入的这个文件,因为论坛附件不能上传sql格式的文件,所以我压缩了一下,也是按phpmyadmin可求的格式压缩的,应该可以直接导入。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 前天 18:38 | 显示全部楼层
本帖最后由 patriotic 于 2025-10-1 18:40 编辑

首頁「愛影視」修改哪個文件?想更改為logo圖片鏈接,能否賜教如何修改,後台同理~先行謝謝啦!帶採集升級1.0.4覆蓋哪個文件升級?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|免费吧论坛

GMT+8, 2025-10-3 05:34 , Processed in 0.083120 second(s), 4 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表