简易小说文件查看器

news/2025/11/3 12:05:48/文章来源:https://www.cnblogs.com/1288blog/p/19186699

简易小说文件查看器

<?php
// viewer.php - 小说目录文件列表查看器
if (!isset($_GET['novel']) || empty($_GET['novel'])) {die('无效的小说名称');
}$novelName = $_GET['novel'];
$novelDir = "小说/" . $novelName;// 安全检查,防止路径遍历攻击
if (!is_dir($novelDir) || strpos($novelName, '..') !== false || strpos($novelName, '/') !== false) {die('小说不存在');
}// 获取小说目录下的所有文件
$files = array();
if (is_dir($novelDir)) {$dirContents = scandir($novelDir);foreach ($dirContents as $item) {if ($item === '.' || $item === '..') continue;$itemPath = $novelDir . '/' . $item;if (is_file($itemPath)) {$files[] = array('name' => $item,'path' => $item);}}
}
?>
<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title><?php echo htmlspecialchars($novelName); ?> - 文件列表</title><style>body {font-family: "Microsoft YaHei", Arial, sans-serif;line-height: 1.6;max-width: 800px;margin: 0 auto;padding: 20px;background-color: #f9f9f9;
        }.header {text-align: center;margin-bottom: 20px;padding-bottom: 10px;border-bottom: 1px solid #ddd;
        }.novel-content {background: white;padding: 20px;border-radius: 5px;box-shadow: 0 1px 3px rgba(0,0,0,0.1);min-height: 400px;}.back-link {display: inline-block;margin-bottom: 20px;color: #007cba;text-decoration: none;}.back-link:hover {text-decoration: underline;}.file-list {list-style-type: none;padding: 0;}.file-list li {padding: 10px;border-bottom: 1px solid #eee;
        }.file-list li:last-child {border-bottom: none;}.file-list a {color: #007cba;text-decoration: none;font-size: 16px;}.file-list a:hover {text-decoration: underline;}</style>
</head>
<body><div class="header"><h1><?php echo htmlspecialchars($novelName); ?> - 文件列表</h1></div><a href="novel.php" class="back-link">&laquo; 返回小说列表</a><div class="novel-content"><?php if (!empty($files)): ?><ul class="file-list"><?php foreach ($files as $file): ?><li><a href="<?php echo htmlspecialchars("小说/" . rawurlencode($novelName) . "/" . rawurlencode($file['path'])); ?>"><?php echo htmlspecialchars($file['name']); ?></a></li><?php endforeach; ?></ul><?php else: ?><p>该小说目录下暂无文件。</p><?php endif; ?></div>
</body>
</html>

使用

 $viewerPath = 'viewer.php?novel=' . $encodedFile;
echo "<li><a href='" . htmlspecialchars($viewerPath) . "'>" . htmlspecialchars($file) . "</a></li>";

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/954430.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年11月珠海酒店评价榜:商务休闲双需求住宿对比指南

计划到珠海出差或度假,很多人把“住得方便、住得安心”排在首位。情侣路、日月贝、香炉湾沙滩一线既是城市名片,也是交通与商业的交汇点,周边酒店常年入住率高于全市均值。公开数据显示,2024年珠海星级与品牌酒店平…

2025年建筑模型行业权威测评:中国建筑模型专业公司排名与深度解析

TOP1推荐:深圳市绿建模型设计有限公司 评价指数:★★★★★ 口碑评分:98分 行业表现:A+++++级 电话号码:18825255886 官网:https://www.lvjian1990.com/ 介绍: 深圳市绿建模型设计有限公司是国内建筑模型领域的…

前端chatbox

下载后开箱即用 1.设置2.选择模型代理 ollama,点ollama3. 获取模型(导入ollama的才可以使用!)4.退出设置后选择模型5.开始对话

2025年11月合肥建筑律师推荐榜:全过程覆盖能力对比评价

正在筹备工程结算却被合同漏洞卡住,或面对总包拖欠、签证被拒、工期索赔无门,合肥建筑行业上下游企业、实际施工人、项目经理在2025年第四季度集中进入诉讼与仲裁窗口期。安徽省高院公开数据显示,2024年全省建设工程…

空间计量模型,包括空间滞后模型、空间误差模型和空间杜宾模型

空间计量模型,包括空间滞后模型(SAR)、空间误差模型(SEM)和空间杜宾模型(SDM)。 空间计量模型基础 空间计量经济学考虑了空间依赖性,即"地理学第一定律":一切事物都与其他事物相关,但近处的事物比远处的…

2025 年塑料挤出设备厂家最新推荐榜单:深度甄选聚焦技术实力、客户认可及设备性能全方位测评塑料板材挤出设备/塑料挤出设备生产线/塑料管材挤出设备生产线公司推荐

引言 近期,行业权威协会针对塑料挤出设备制造企业开展了全面测评,测评数据显示,当前行业内设备合格率虽达 82%,但具备核心技术专利与完善售后服务的企业仅占 35%。本次测评采用多维度评估体系,从企业技术实力(含…

AtCoder Beginner Contest 430 ABCDEF 题目解析

A - Candy Cookie Law 题意 在高桥居住的 AtCoder 国家有一条奇怪的法律,即“如果一个人拥有的糖果数量 \(\ge A\),那么他拥有的饼干数量就必须 \(\ge B\)”。 高桥拥有 \(C\) 颗糖果和 \(D\) 块饼干,请判断高桥是否…

哪个文件共享平台好用?11款主流工具深度对比

本文深度评测了11款主流文件共享平台,旨在帮助企业和个人解决文件管理与团队协作难题。在众多选择中,坚果云凭借其独特的无感同步技术、企业级的数据安全保障(如公安部三级等保认证)以及强大的文件历史版本功能,从…

2025年广东空运到印度专线机构权威推荐榜单:广东到印度的海运平台/广东空运到印度物流平台/广东到印度专线双清包税服务源头机构精选

随着中印贸易往来日益紧密,广东作为中国外贸前沿阵地,对印度空运专线的需求显著增长。2025年,广东至印度空运货量同比增长15% 以上,其中高价值电子产品、跨境电商包裹占比超60% 。空运专线凭借5-7天的时效优势及DD…

2025年规模大型纸箱厂家权威推荐榜单:化妆品纸箱/包装纸箱/瓦楞纸箱源头厂家精选

在电商物流井喷式增长与“双碳”目标持续推进的背景下,中国包装行业正迎来一场深刻的结构性变革。纸箱,这个看似平凡的“工业配角”,实则承载着万亿级产业链的运转命脉。 据行业数据显示,2024年我国瓦楞纸箱市场规…

2025 年最新推荐锰钢编织筛网厂家排行榜,涵盖耐磨矿用等多类型产品,精选五大靠谱品牌助力企业采购滚筒/平筛/黑钢锰钢编织筛网公司推荐

引言 当前锰钢编织筛网市场需求旺盛,但供应商质量良莠不齐的问题愈发凸显。部分供应商用劣质原料生产,导致产品耐磨差、寿命短,增加企业更换成本与生产损耗;还有供应商缺乏完善质检体系,产品难以满足矿山、石料厂…

用四端法测量Fe-Cr-Al丝的电阻率

用四端法测量 Fe-Cr-Al 丝的电阻率实验时间:2025/11/03 一、实验目的了解接触电阻在低阻测量中的影响; 掌握四端测量法的原理与操作; 学会计算金属导线的电阻率及分析测量误差。二、实验仪器Fe-Cr-Al 合金丝(待测样…

如何选择企业私有网盘?这9款内网文件共享工具优劣全解析

在寻找安全可靠的企业内网文件共享方案吗?本文深度对比了市面上9款主流私有网盘,旨在解决企业对数据安全、合规性与协作效率的核心需求。综合评测显示,坚果云凭借其公安部三级等保的顶级安全认证、独特的智能增量同…

C# Web开发教程(十一)后台主动服务

托管服务(HostedService,也称为"后台服务")托管服务,这个翻译是不准确的,我觉得应该翻译成主动服务:服务器自己主动发起的服务(任务)[相对于客户端发起请求,服务端才响应]它是一种在应用启动后自动运行、无需…

2025 年国际高中学校最新推荐榜,聚焦办学资质与升学成果深度解析及教学质量与综合实力全面评估松江区 / 青浦区 / 奉贤区 / 崇明区国际高中推荐

引言 国际教育协会近期发布的国际高中综合测评报告显示,本次测评覆盖近百所国际高中,从办学资质、师资团队、课程认证、升学成果、教学设施五大维度设置 28 项细分指标,采用量化评分与质性评估结合的方式,其中办学…

2025年汽车超薄低音源头厂家权威推荐榜单:汽车音响超薄低音/汽车超薄低音炮/汽车音响超薄低音炮源头厂家精选

技术创新正推动汽车超薄低音炮市场蓬勃发展,其中定制化需求占比已突破40%。 随着汽车智能化转型加速,超薄低音炮市场年复合增长率达12.7%。在这场技术竞赛中,拥有核心技术的超薄低音设备厂家表现尤为突出,它们通过…

2025年保洁服务公司新排行榜推荐,海獭顾家无忧保洁服务详细介绍

在保洁服务市场日益繁荣的当下,众多企业和家庭都在寻找一家可靠、专业且服务优质的保洁公司。海獭顾家无忧保洁服务在市场上逐渐崭露头角,不少人也在询问海獭顾家保洁服务口碑好吗。以下为您呈上一份2024年保洁服务公…

基于开源操作系统搭建K8S高可用集群

准备环境:安装Rocky Linux操作系统到每个节点上。 为每个节点配置静态IP地址。 确保节点之间可以互相通信。安装Docker:在每个节点上安装Docker,这将成为Kubernetes的容器运行时。运行以下命令来安装Docker: sudo …

2025 年阳台光伏厂家推荐:昱电宝依托昱能科技技术积淀,打造场景化光伏解决方案与服务体系

行业背景 2025 年成为中国阳台光伏市场启动元年,在新能源电价市场化改革政策推动下,传统光伏项目收益模式面临转型,阳台光伏因初始投资小、适配场景广成为行业新增长点。数据显示,2025 年国内阳台光伏装机量预计攀…

【2025-11-01】连岳摘抄

23:59善欲人见,不是真善;恶恐人知,便是大恶。——《朱子家训》人人都想长寿。长寿者占有更多的时间。有更多的时间,就有更多的可能性。时间有两重属性。一个是长度,一个是深度。我们往往只看到长度,没有看到深度…