/
al.anatolyev
/
web4stud
Обзор
Документация
Войти
/
al.anatolyev
/
web4stud
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
workshop/index.php
79 строк
3 KB
aag
%1
19 май 2026, 12:36
19 май 2026, 12:36
1775bad
Код
Авторство
О чём код?
<?php //declare(strict_types=1); define("FILEMASK", ["*.[0-9].lab.html", "*.[0-9].homework.html", "*.[0-9].extra.html"]); $content=array("title"=>"","body"=>"", "synopsys"=>""); $content["menu"] = '<nav><a href="/">HOME</a> | <a href="index.php">Table of Contents</a> | <a href="preprint.php">Print (all)</a> </nav>'; if (empty($_GET)) { function createList($mask) { // $files = glob("*.[0-9].$mask.html", GLOB_BRACE); $files = glob($mask, GLOB_BRACE); $arr = array_map(function($filename) { $t = explode(".", $filename); preg_match("/<h1>([^<]+)<\/h1>/", file_get_contents($filename), $h1); return [$t[1], $t[2], $t[0], $h1[1]]; }, $files); sort($arr); $arr = array_map(function($listItem) { return "<li><a href=\"?$listItem[2]\">$listItem[3]</a></li>"; },$arr); return "<ul>\n".implode("\n", $arr)."</ul>\n"; }; $workshop = createList(FILEMASK[0]); $homework = createList(FILEMASK[1]); $extras = createList(FILEMASK[2]); $content["title"] = "Лабораторный практикум"; $content["body"] = "<h1>Веб-программирование</h1>"; $content["body"] .= "<h2>$content[title]</h2>" . $workshop ; $content["body"] .= "<h2>Самостоятельная работа</h2>" . $homework ; $content["body"] .= "<h2>Дополнительные материалы</h2>" . $extras ; } else { $fn = glob(htmlspecialchars(strip_tags(key($_GET))).".*.html", GLOB_BRACE); if (empty($fn)) {header($_SERVER["SERVER_PROTOCOL"] . " 404 Not Found", true, 404); die ("<h1 style='text-align:center;'>Error 404. Resource Not Found(((</h1>");}; $content["body"] = file_get_contents($fn[0]) ? : "no data"; preg_match("/<h1>([^<]+)<\/h1>/", $content["body"] , $h1); $content["title"] = $h1[1]; } //$synops file_get_contents("workshop.synopsys.nem ?> <!DOCTYPE html> <html lang="ru"> <head> <meta charset="utf-8"> <title><?= $content["title"] ; ?></title> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="description" content=""> <!-- <link rel="icon" type="image/svg+xml" href="/favicon.svg"> --> <link rel="icon" href="/favicon.ico" type="image/x-icon"> <link rel="stylesheet" href="/styles.css"> <script src="/scripts.js"></script> <meta http-equiv="refresh" content="20"> </head> <body> <header class="container"><?= $content["menu"]; ?></header> <article class="container" id="top"> <div id="outline"><!-- see js-code in footer.php --></div> <?= $content["body"] ; ?> </article> <footer class="container bottom-nav"><?= $content["menu"]; ?></footer> </body> </html>