change url

This commit is contained in:
Adrien MALINGREY 2025-05-19 17:11:28 +02:00
parent 5a63ac033e
commit d9415c7fa6
3 changed files with 48 additions and 37 deletions

4
config.php Normal file
View File

@ -0,0 +1,4 @@
<?php
$basedir = __DIR__ . "/confs";
$locale = "fr_FR.UTF-8";

View File

@ -1,3 +1,14 @@
<?php
require_once "config.php";
setlocale(LC_CTYPE, $locale);
if ($_SERVER["QUERY_STRING"] != "") {
include "show.php";
exit;
}
?>
<!DOCTYPE HTML> <!DOCTYPE HTML>
<html lang='fr'> <html lang='fr'>
@ -11,42 +22,39 @@
<h1>Schémas des VLANs</h1> <h1>Schémas des VLANs</h1>
<div class="file-list"> <div class="file-list">
<ul> <ul>
<?php <?php
$basedir = __DIR__ . "/confs"; function recursive_ls($path) {
global $basedir;
function recursive_ls($path) if (substr(basename($path), 0, 1) == '.') {
{ return "";
global $basedir; }
if (substr(basename($path), 0, 1) == '.') { if (is_dir($path)) {
return ""; $str = "";
} foreach (scandir($path) as $filename) {
$str .= recursive_ls("$path/$filename");
if (is_dir($path)) { }
$str = ""; if ($str == "") {
foreach (scandir($path) as $filename) { return "";
$str .= recursive_ls("$path/$filename"); } else {
} if ($path == $basedir) {
if ($str == "") { return "<ul>\n$str\n</ul>\n";
return ""; } else {
} else { return "<li>\n<details>\n<summary>" . basename($path) . "</summary>\n<ul>\n" . $str . "</ul>\n</details>\n</li>\n";
if ($path == $basedir) {
return "<ul>\n$str\n</ul>\n";
} else {
return "<li>\n<details>\n<summary>" . basename($path) . "</summary>\n<ul>\n" . $str . "</ul>\n</details>\n</li>\n";
}
}
}
if (substr($path, -4) == ".cfg") {
return "<li><a href='show.php?switch=" . str_replace("$basedir/", "", $path) . "' target='_blank'>" . basename($path) . "</a></li>\n";
}
return "";
} }
}
}
echo recursive_ls($basedir); if (substr($path, -4) == ".cfg") {
?> return "<li><a href='?" . str_replace("$basedir/", "", $path) . "' target='_blank'>" . basename($path) . "</a></li>\n";
}
return "";
}
echo recursive_ls($basedir);
?>
</ul> </ul>
</div> </div>
</body> </body>

View File

@ -1,10 +1,9 @@
<?php <?php
setlocale(LC_CTYPE, "fr_FR.UTF-8");
$basedir = __DIR__ . "/confs/"; $path = realpath($basedir . DIRECTORY_SEPARATOR . ltrim(urldecode($_SERVER["QUERY_STRING"]), '/'));
$path = escapeshellcmd(realpath($basedir . $_GET["switch"]));
if (substr($path, -4) != ".cfg") { if (strpos($path, $basedir) !== 0 || substr($path, -4) != ".cfg") {
http_response_code(404); http_response_code(403);
die(); die();
} }