このコミットが含まれているのは:
守矢諏訪子 2022-08-11 06:44:02 +09:00
コミット 446ca02e6f
1個のファイルの変更111行の追加0行の削除

111
www/index.php ノーマルファイル
ファイルの表示

@ -0,0 +1,111 @@
<?php
require_once('../config.php');
$title = SITE_NAME;
$h1 = SITE_NAME;
function mkstring () {
$stringchars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';
$newstring = '';
for ($i = 0; $i < 5; $i++) $newstring .= $stringchars[rand(0, strlen($stringchars))];
foreach ($arr as $k => $v) {
if ($newstring == $k) return mkstring();
}
return $newstring;
}
// パラメートルがなければ、スキップ。
if (isset($_POST['sosin'])) {
$newadd = $_POST['newadd'];
if (!str_starts_with($newadd, 'http://') && !str_starts_with($newadd, 'https://')) {
$title = '076エラー - 不正なURL';
$h1 = '【エラー】不正なURL';
$bg = 'daityan';
$bgpos = 'top right 100px';
$err = 'URLは「http://」又は「https://」で始まります。';
include_once('../views/404.php');
exit;
}
if (strlen($newadd) > 500) {
$title = '076エラー - 不正なURL';
$h1 = '【エラー】URLは長すぎ';
$bg = 'daityan';
$bgpos = 'top right 100px';
$err = 'URLは500文字以内です。';
include_once('../views/404.php');
exit;
}
$data = file_get_contents('links.json');
$arr = json_decode($data, true);
foreach ($arr as $k => $v) {
if ($newadd == $v) {
if (isset($_POST['api']) && $_POST['api'] == 1) {
header('Content-Type: application/json');
echo json_encode(['res' => $k]);
}
else header('Location: /?newurl='.$k);
exit;
}
}
$newstring = mkstring();
$arr[$newstring] = $newadd;
$newdata = json_encode($arr);
file_put_contents('links.json', $newdata);
if (isset($_POST['api']) && $_POST['api'] == 1) {
header('Content-Type: application/json');
echo json_encode(['res' => $newstring]);
}
else header('Location: /?newurl='.$newstring);
exit;
}
else if (!isset($_GET['url']) && isset($_GET['newurl'])) {
$newurl = $_GET['newurl'];
$bg = 'kasen';
$bgpos = 'top 10px left 120px';
include_once('../views/submitted.php');
}
else if (isset($_GET['url']) && $_GET['url'] != '') {
$data = file_get_contents('links.json');
foreach (json_decode($data) as $k => $v) {
// jsonファイルでキーを見つければ、転送されます。なければ、エラーが出ます。
if ($_GET['url'] == $k) {
if (isset($_GET['api']) && $_GET['api'] == 1) {
header('Content-Type: application/json');
echo json_encode(['res' => $v]);
}
else header('Location: '.$v);
exit;
}
else {
$title = '076エラー - 未検出';
$h1 = '【404】未検出';
$bg = 'daityan';
$bgpos = 'top right 100px';
$err = 'このURLを見つけられませんでした。';
include_once('../views/404.php');
}
}
}
else if (!isset($_GET['url']) && $_SERVER['REQUEST_URI'] == '/') {
$bg = 'rumia';
$bgpos = 'top -30px right 90px';
include_once('../views/index.php');
}
else {
$title = '076エラー - 未検出';
$h1 = '【404】未検出';
$bg = 'daityan';
$bgpos = 'top right 100px';
$err = 'このURLを見つけられませんでした。';
include_once('../views/404.php');
}
?>