Linux tsuru-no-tsurugi 5.15.0-186-generic #196-Ubuntu SMP Sat Jun 20 16:09:34 UTC 2026 x86_64
Apache/2.4.52 (Ubuntu)
Server IP : 192.168.0.18 & Your IP : 216.73.217.105
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
var /
www /
html /
quiz /
auth /
Delete
Unzip
Name
Size
Permission
Date
Action
views
[ DIR ]
drwxr-xr-x
2024-08-27 23:20
database.php
375
B
-rwxr-xr-x
2024-08-27 23:20
functions.php
2.01
KB
-rwxr-xr-x
2024-08-27 23:20
functions2.php
420
B
-rwxr-xr-x
2024-08-27 23:20
login.php
5.12
KB
-rwxr-xr-x
2024-08-29 23:28
logout.php
259
B
-rwxr-xr-x
2024-08-28 00:17
register.php
1.89
KB
-rwxr-xr-x
2024-08-28 00:17
Save
Rename
<?php //ファイルの読み込み require_once '/var/www/html/quiz/auth/database.php'; require_once '/var/www/html/quiz/auth/functions.php'; //セッション開始 session_start(); $pdo = getPdo(); // セッション変数 $_SESSION["loggedin"]を確認。ログイン済だったらウェルカムページへリダイレクト if (isset($_SESSION["loggedin"]) && $_SESSION["loggedin"] === true) { header("location: /index.php"); exit; } //POSTされてきたデータを格納する変数の定義と初期化 $datas = [ 'name' => '', 'password' => '', 'password_confirmation' => '' ]; $login_err = $_GET['err']; //GET通信だった場合はセッション変数にトークンを追加 if ($_SERVER['REQUEST_METHOD'] != 'POST') { setToken(); } //POST通信だった場合はログイン処理を開始 if ($_SERVER["REQUEST_METHOD"] == "POST") { ////CSRF対策 checkToken(); // POSTされてきたデータを変数に格納 foreach ($datas as $key => $value) { if ($value = filter_input(INPUT_POST, $key, FILTER_DEFAULT)) { $datas[$key] = $value; } } // バリデーション $errors = validation($datas, false); //if(empty($errors)){ if (true) { //ユーザーネームから該当するユーザー情報を取得 $sql = "SELECT id,name,passwd FROM users WHERE name = :name"; $stmt = $pdo->prepare($sql); $stmt->bindValue(':name', $datas['name'], PDO::PARAM_STR); $stmt->execute(); //ユーザー情報があれば変数に格納 if ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { //パスワードがあっているか確認 if (password_verify($datas['password'], $row['passwd'])) { //セッションIDをふりなおす session_regenerate_id(true); //セッション変数にログイン情報を格納 $_SESSION["loggedin"] = true; $_SESSION["id"] = $row['id']; $_SESSION["name"] = $row['name']; //ウェルカムページへリダイレクト header("location:../index.php"); exit(); } else { $login_err = 'ユーザー名またはパスワードが間違っています'; } } else { $login_err = 'ユーザー名またはパスワードが間違っています'; } } } ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>静高生クイズ | 工学部 + クイズ研究会</title> <link rel="icon" type="image/png" href="https://kougakubu.tsuru-no-tsurugi.tokyo/icon.png"> <link rel="stylesheet" type="text/css" href="/css.css"> <script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script> <script> </script> </head> <body style="background-color: #f9f9f9;"> <header> <a href="https://quiz.tsuru-no-tsurugi.tokyo/"> <img src="https://kougakubu.tsuru-no-tsurugi.tokyo/icon.png" class="gaming" height="35px"> </a> <a> </a> <a class="a-none-color" href="https://quiz.tsuru-no-tsurugi.tokyo/">静高生クイズ | 工学部 + クイズ研究会</a> <ul class="menu-group"> <li class="menu-item"><a href="../index.php">ホーム</a></li> <li class="menu-item"><a href="../rank.php">順位</a></li> | <li class="menu-item"><a href="./login.php">ログイン</a></li> </ul> </header> <hr> <br><br> <p class="center" style="font-family:serif;font-size: 40px;text-shadow: #e23b44 2px 2px 3px;">静高生クイズ</p> <br> <form action="/auth/login.php" method="post"> <label>ユーザー名</label> <input type="text" style="width:50%;font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace;font-size: larger;" name="name"> <br> <?php if (!empty($errors['name'])) { echo '<div class="err_box">' . $errors['name'] . '</div>'; } ?> <br><label>パスワード</label> <input type="password" style="width:50%;font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace;font-size: larger;" name="password"> <?php if (!empty($errors['password'])) { echo '<div class="err_box">' . $errors['password'] . '</div>'; } ?> <input type="hidden" name="token" value="<?php echo h($_SESSION['token']); ?>"> <br> <input type="submit" style="background: red;color; blue;font-weight: bold;font-size: larger;" value="送信"> <br> <div id="content" style="margin: inherit;"></div> <br> <footer> <p>© 静岡高校工学部 2024</p> </footer> </body> <script> async function set_file() { const response = await fetch('/MARKDOWN/auth/login.md'); // TODO const text = await response.text(); document.getElementById('content').innerHTML = marked.parse(text); } const fetched_text = set_file(); </script> </html>