1
0
mirror of https://github.com/Daichimarukana/uwuzu.git synced 2026-06-05 11:34:41 +00:00

uwuzu version 1.2.23

This commit is contained in:
daichimarukana
2023-09-16 23:19:30 +09:00
parent 4c588a6903
commit e8ddcb9921
56 changed files with 1705 additions and 468 deletions
+4
View File
@@ -9,9 +9,13 @@ RewriteRule ^(@\w+)$ /user/index.php?uwuzuid=$1 [QSA,L]
RewriteRule ^!(\w+)~(\w+)$ /ueuse/index.php?ueuseid=$1&touser=$2 [QSA,L] RewriteRule ^!(\w+)~(\w+)$ /ueuse/index.php?ueuseid=$1&touser=$2 [QSA,L]
RewriteRule ^!(\w+)$ /ueuse/index.php?ueuseid=$1 [QSA,L]
ErrorDocument 400 /errorpage/400.php ErrorDocument 400 /errorpage/400.php
ErrorDocument 401 /errorpage/401.php ErrorDocument 401 /errorpage/401.php
ErrorDocument 403 /errorpage/403.php ErrorDocument 403 /errorpage/403.php
ErrorDocument 404 /errorpage/404.php ErrorDocument 404 /errorpage/404.php
ErrorDocument 500 /errorpage/500.php ErrorDocument 500 /errorpage/500.php
ErrorDocument 503 /errorpage/503.php ErrorDocument 503 /errorpage/503.php
Header set X-FRAME-OPTIONS “DENY”
+23
View File
@@ -19,6 +19,7 @@ PHP 8では事前にGDを有効化しておいてください!(QRコードの
## 簡単に構築できるようSQLの構造ファイルがリリースに添付されています!そちらをインポートしていただけますと大幅に簡単に導入できます! ## 簡単に構築できるようSQLの構造ファイルがリリースに添付されています!そちらをインポートしていただけますと大幅に簡単に導入できます!
(userロールとofficialロールとiceロールの設定は別途必要です。お手数ですがそこの設定だけよろしくお願いいたします。) (userロールとofficialロールとiceロールの設定は別途必要です。お手数ですがそこの設定だけよろしくお願いいたします。)
### account ### account
- sysid(INT)(AUTO_INCREMENT ) アカウントが追加されるとカウントされるシステム用ID - sysid(INT)(AUTO_INCREMENT ) アカウントが追加されるとカウントされるシステム用ID
- username(varchar(500)) ユーザーネーム保存用 - username(varchar(500)) ユーザーネーム保存用
@@ -36,6 +37,7 @@ PHP 8では事前にGDを有効化しておいてください!(QRコードの
- admin(varchar(25)) 管理者アカウントなら「yes」、それ以外なら「none」と入力。 - admin(varchar(25)) 管理者アカウントなら「yes」、それ以外なら「none」と入力。
- authcode(varchar(256)) 二段階認証用キー保存用 - authcode(varchar(256)) 二段階認証用キー保存用
- backupcode(varchar(256)) 二段階認証のバックアップコード保存用 - backupcode(varchar(256)) 二段階認証のバックアップコード保存用
- sacinfo(varchar(256)) 特殊アカウント識別用
### emoji ### emoji
- sysid(INT)(AUTO_INCREMENT) アカウントが追加されるとカウントされるシステム用ID - sysid(INT)(AUTO_INCREMENT) アカウントが追加されるとカウントされるシステム用ID
@@ -73,6 +75,7 @@ PHP 8では事前にGDを有効化しておいてください!(QRコードの
- favorite(text) いいね保存用 - favorite(text) いいね保存用
- abi(text) 投稿者の追記保存用 - abi(text) 投稿者の追記保存用
- abidate(datetime) 追記日時保存用 - abidate(datetime) 追記日時保存用
- nsfw(varchar(25)) NSFW指定有無保存用
### notification ### notification
- sysid(INT)(AUTO_INCREMENT) 通知されるとカウントされるシステム用ID - sysid(INT)(AUTO_INCREMENT) 通知されるとカウントされるシステム用ID
@@ -112,6 +115,26 @@ PHP 8では事前にGDを有効化しておいてください!(QRコードの
そしたら普通にuwuzuにアクセスして自分のアカウントを登録。 そしたら普通にuwuzuにアクセスして自分のアカウントを登録。
## 管理者アカウント登録機能が追加されました。【[domain]/admin/】より設定できるのでそちらをご利用ください。 ## 管理者アカウント登録機能が追加されました。【[domain]/admin/】より設定できるのでそちらをご利用ください。
なお、管理者アカウントを導入後に登録した場合サーバーを止めてuwuzu動作ディレクトリ内のserverフォルダ内のファイルを設定する必要はございません。 なお、管理者アカウントを導入後に登録した場合サーバーを止めてuwuzu動作ディレクトリ内のserverフォルダ内のファイルを設定する必要はございません。
管理者アカウント作成後にログインし、サーバー設定より以下の項目が簡単に設定できます。
- 404imagepath.txt : 404ページに表示する画像パス保存用
- 503imagepath.txt : 503ページに表示する画像パス保存用
- admininfo.txt : 管理者名(てすとまる/@sampledayo)
- banurldomain.txt : 投稿禁止URLドメイン
- banuserid.txt : 登録禁止ユーザーid
- admininfo.txt : 管理者名(てすとまる/@sampledayo)
- contact.txt : 管理者への連絡用メアド(sample@test.com)
- info.txt : サーバー登録時に表示されるメッセージ(好きな内容)
- privacypolicy.txt : プライバシーポリシー(サーバーのプライバシーポリシーを記載)
- servaricon.txt : サーバーアイコンのURL
- servername.txt : サーバー名(てすとさば)
- serverstop.txt : サーバー停止ページで表示するメッセージ
- terms.txt : 利用規約(サーバーの利用規約を記載)
- textsize.txt : 最大文字数
- uwuzuabout.txt : このファイル(uwuzuを改造した場合は書き換え)
- uwuzuinfo.txt : uwuzuのバージョン等記載(uwuzuを改造した場合は書き換え)
- uwuzurelease.txt : uwuzuのバージョン等記載(uwuzuを改造した場合は書き換え)
- onlyuser.txt : 招待コード機能をオンにするかどうか、「true」でオン、「false」でオフ。招待コードはDBに直接追加。
### これでサーバーは完成!!! ### これでサーバーは完成!!!
脆弱だから自己責任で楽しんでね~() 脆弱だから自己責任で楽しんでね~()
+38 -5
View File
@@ -51,16 +51,49 @@ try {
// 接続エラーのときエラー内容を取得する // 接続エラーのときエラー内容を取得する
$error_message[] = $e->getMessage(); $error_message[] = $e->getMessage();
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true && isset($_COOKIE['loginid']) && isset($_SESSION['userid'])) {
$options = array(
// SQL実行失敗時に例外をスルー
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
// デフォルトフェッチモードを連想配列形式に設定
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
// SELECTで得た結果に対してもrowCountメソッドを使えるようにする
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
);
$dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
$acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$acck->bindValue(':userid', $_SESSION['userid']);
$acck->execute();
$acck_data = $acck->fetch();
if(!empty($acck_data)){
if($_COOKIE['loginid'] === $acck_data["loginid"] && $_SESSION['userid'] === $acck_data["userid"] ){
header("Location: home/index.php"); header("Location: home/index.php");
exit; exit;
}
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { }
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true && isset($_COOKIE['loginid']) && isset($_COOKIE['userid'])) {
$options = array(
// SQL実行失敗時に例外をスルー
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
// デフォルトフェッチモードを連想配列形式に設定
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
// SELECTで得た結果に対してもrowCountメソッドを使えるようにする
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
);
$dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
$acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$acck->bindValue(':userid', $_COOKIE['userid']);
$acck->execute();
$acck_data = $acck->fetch();
if(!empty($acck_data)){
if($_COOKIE['loginid'] === $acck_data["loginid"] && $_COOKIE['userid'] === $acck_data["userid"] ){
header("Location: home/index.php"); header("Location: home/index.php");
exit; exit;
}
}
} }
require_once 'authcode/GoogleAuthenticator.php'; require_once 'authcode/GoogleAuthenticator.php';
+38 -5
View File
@@ -47,16 +47,49 @@ try {
// 接続エラーのときエラー内容を取得する // 接続エラーのときエラー内容を取得する
$error_message[] = $e->getMessage(); $error_message[] = $e->getMessage();
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true && isset($_COOKIE['loginid']) && isset($_SESSION['userid'])) {
$options = array(
// SQL実行失敗時に例外をスルー
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
// デフォルトフェッチモードを連想配列形式に設定
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
// SELECTで得た結果に対してもrowCountメソッドを使えるようにする
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
);
$dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
$acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$acck->bindValue(':userid', $_SESSION['userid']);
$acck->execute();
$acck_data = $acck->fetch();
if(!empty($acck_data)){
if($_COOKIE['loginid'] === $acck_data["loginid"] && $_SESSION['userid'] === $acck_data["userid"] ){
header("Location: home/index.php"); header("Location: home/index.php");
exit; exit;
}
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { }
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true && isset($_COOKIE['loginid']) && isset($_COOKIE['userid'])) {
$options = array(
// SQL実行失敗時に例外をスルー
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
// デフォルトフェッチモードを連想配列形式に設定
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
// SELECTで得た結果に対してもrowCountメソッドを使えるようにする
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
);
$dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
$acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$acck->bindValue(':userid', $_COOKIE['userid']);
$acck->execute();
$acck_data = $acck->fetch();
if(!empty($acck_data)){
if($_COOKIE['loginid'] === $acck_data["loginid"] && $_COOKIE['userid'] === $acck_data["userid"] ){
header("Location: home/index.php"); header("Location: home/index.php");
exit; exit;
}
}
} }
if( !empty($_POST['btn_submit']) ) { if( !empty($_POST['btn_submit']) ) {
+38 -6
View File
@@ -40,16 +40,48 @@ try {
$error_message[] = $e->getMessage(); $error_message[] = $e->getMessage();
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true && isset($_COOKIE['loginid']) && isset($_SESSION['userid'])) {
$options = array(
// SQL実行失敗時に例外をスルー
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
// デフォルトフェッチモードを連想配列形式に設定
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
// SELECTで得た結果に対してもrowCountメソッドを使えるようにする
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
);
$dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
$acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$acck->bindValue(':userid', $_SESSION['userid']);
$acck->execute();
$acck_data = $acck->fetch();
if(!empty($acck_data)){
if($_COOKIE['loginid'] === $acck_data["loginid"] && $_SESSION['userid'] === $acck_data["userid"] ){
header("Location: home/index.php"); header("Location: home/index.php");
exit; exit;
}
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { }
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true && isset($_COOKIE['loginid']) && isset($_COOKIE['userid'])) {
$options = array(
// SQL実行失敗時に例外をスルー
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
// デフォルトフェッチモードを連想配列形式に設定
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
// SELECTで得た結果に対してもrowCountメソッドを使えるようにする
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
);
$dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
$acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$acck->bindValue(':userid', $_COOKIE['userid']);
$acck->execute();
$acck_data = $acck->fetch();
if(!empty($acck_data)){
if($_COOKIE['loginid'] === $acck_data["loginid"] && $_COOKIE['userid'] === $acck_data["userid"] ){
header("Location: home/index.php"); header("Location: home/index.php");
exit; exit;
}
}
} }
if( !empty($_POST['btn_submit']) ) { if( !empty($_POST['btn_submit']) ) {
+43
View File
@@ -92,6 +92,49 @@ try {
$error_message[] = $e->getMessage(); $error_message[] = $e->getMessage();
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true && isset($_COOKIE['loginid']) && isset($_SESSION['userid'])) {
$options = array(
// SQL実行失敗時に例外をスルー
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
// デフォルトフェッチモードを連想配列形式に設定
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
// SELECTで得た結果に対してもrowCountメソッドを使えるようにする
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
);
$dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
$acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$acck->bindValue(':userid', $_SESSION['userid']);
$acck->execute();
$acck_data = $acck->fetch();
if(!empty($acck_data)){
if($_COOKIE['loginid'] === $acck_data["loginid"] && $_SESSION['userid'] === $acck_data["userid"] ){
header("Location: home/index.php");
exit;
}
}
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true && isset($_COOKIE['loginid']) && isset($_COOKIE['userid'])) {
$options = array(
// SQL実行失敗時に例外をスルー
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
// デフォルトフェッチモードを連想配列形式に設定
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
// SELECTで得た結果に対してもrowCountメソッドを使えるようにする
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
);
$dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
$acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$acck->bindValue(':userid', $_COOKIE['userid']);
$acck->execute();
$acck_data = $acck->fetch();
if(!empty($acck_data)){
if($_COOKIE['loginid'] === $acck_data["loginid"] && $_COOKIE['userid'] === $acck_data["userid"] ){
header("Location: home/index.php");
exit;
}
}
}
if( !empty($_POST['btn_submit']) ) { if( !empty($_POST['btn_submit']) ) {
+1
View File
@@ -12,4 +12,5 @@
--dark-sub-color: #181616; --dark-sub-color: #181616;
--dark-background-color: #0c0c0c; --dark-background-color: #0c0c0c;
--dark-subtext-color: #CCC; --dark-subtext-color: #CCC;
--dark-text-color: #FFF;
} }
+205 -6
View File
@@ -9,6 +9,10 @@
margin-right: 10px; margin-right: 10px;
border-radius: 25px; border-radius: 25px;
} }
::selection {
color: var(--background-color);
background: var(--main-color);
}
body{ body{
width: 70%; width: 70%;
display: flex; display: flex;
@@ -926,6 +930,7 @@ main h1{
background-color: var(--ueuse-color); background-color: var(--ueuse-color);
border: 1px solid var(--border-color); border: 1px solid var(--border-color);
width: auto; width: auto;
overflow: hidden;
} }
@keyframes slideInY { @keyframes slideInY {
0% { 0% {
@@ -988,6 +993,20 @@ main h1{
font-family: 'BIZ UDPGothic', sans-serif; font-family: 'BIZ UDPGothic', sans-serif;
} }
.ueuse .flebox .bot{
margin-top: auto;
margin-bottom: auto;
padding: 6px 8px;
margin-left: 6px;
border-radius: 10px;
background-color: var(--sub-color);
border: 1px solid var(--border-color);
font-family: 'BIZ UDGothic', sans-serif;
font-weight: bold;
text-align: center;
font-size: 12px;
color:var(--main-color);
}
.ueuse p{ .ueuse p{
line-height:20px; line-height:20px;
overflow-wrap: break-word; overflow-wrap: break-word;
@@ -1196,7 +1215,7 @@ main h1{
padding-right: 12px; padding-right: 12px;
padding-top: 16px; padding-top: 16px;
padding-bottom: 16px; padding-bottom: 16px;
background-color: var(--background-color)FFF; background-color: var(--tl-color);
border: 1px solid var(--border-color); border: 1px solid var(--border-color);
width: auto; width: auto;
} }
@@ -1547,7 +1566,38 @@ main h1{
font-family: 'BIZ UDGothic', sans-serif; font-family: 'BIZ UDGothic', sans-serif;
font-weight: normal; font-weight: normal;
} }
.ueuse .nsfw{
display: flex;
overflow: hidden;
margin-top: 12px;
margin-bottom: 12px;
border: 1px solid var(--border-color);
background-color: var(--background-color);
padding: 12px;
border-radius: 8px;
}
.ueuse .nsfw .btnzone{
display: block;
margin-left: auto;
margin-top: auto;
margin-right: 0px;
margin-bottom: -6px;
}
.ueuse .nsfw p{
margin-left: 0px;
}
.ueuse .nsfw_main{
border: 1px solid var(--border-color);
overflow: hidden;
border-radius: 10px;
}
.ueuse .nsfw_main .block{
filter: brightness(70%) blur(32px) saturate(70%);
pointer-events: none;
}
.ueuse .nsfw_main .clear{
filter: brightness(100%) blur(0px) saturate(100%);
}
.tokonone p{ .tokonone p{
text-align: center; text-align: center;
@@ -1625,6 +1675,7 @@ main h1{
border: none; border: none;
display: block; display: block;
width:6%; width:6%;
height: 24px;
padding: 8px auto; padding: 8px auto;
margin-left: 6px; margin-left: 6px;
margin-right: 6px; margin-right: 6px;
@@ -1656,9 +1707,12 @@ main h1{
box-shadow:0 0px 48px 0 rgba(0, 0, 0, .05); box-shadow:0 0px 48px 0 rgba(0, 0, 0, .05);
width:5%; width:5%;
} }
.sendbox label img{ .sendbox label svg{
vertical-align:bottom; margin: auto;
fill: currentColor;
vertical-align:top;
width: 24px; width: 24px;
height: 24px;
} }
.sendbox .fxbox p{ .sendbox .fxbox p{
line-height:20px; line-height:20px;
@@ -1672,6 +1726,49 @@ main h1{
font-weight: bold; font-weight: bold;
} }
.sendbox .fxbox .nsfw_input {
position: absolute;
width: auto;
height: auto;
z-index: 5;
opacity: 0;
cursor: pointer;
transition: all 250ms ease-out;
}
.sendbox .fxbox .nsfw_label {
cursor: pointer;
border: none;
display: block;
width:6%;
height: 24px;
padding: 6px 6px;
background-color: var(--main-color);
width: auto;
height: auto;
color: var(--background-color);
position: relative;
border-radius: 50px;
transition: all 250ms ease-out;
}
.sendbox .fxbox .nsfw_input:checked + .nsfw_label {
background-color: #FF4848;
}
.sendbox .fxbox .nsfw_button {
position: relative;
width: auto;
height: auto;
}
.sendbox .fxbox .nsfw_label svg{
margin: auto;
fill: currentColor;
vertical-align:top;
width: 24px;
height: 24px;
}
.ueusebtn{ .ueusebtn{
@@ -3597,6 +3694,53 @@ summary {
font-weight: 900; font-weight: 900;
} }
.overview{
display: flex;
width: 100%;
margin-top: 12px;
margin-bottom: 12px;
}
.overview_cnt_l{
margin-left: 0px;
margin-right: 6px;
width: 50%;
background-color: var(--background-color);
padding: 12px;
border-radius: 8px;
border: 1px solid var(--border-color);
}
.overview_cnt_r{
margin-left: 6px;
margin-right: 0px;
width: 50%;
background-color: var(--background-color);
padding: 12px;
border-radius: 8px;
border: 1px solid var(--border-color);
}
.overview p{
color: var(--text-color);
font-size: 32px;
font-family: 'BIZ UDGothic', sans-serif;
font-weight: bold;
}
.overview .p2{
color: var(--subtext-color);
font-size: 12px;
font-family: 'BIZ UDGothic', sans-serif;
font-weight: normal;
}
.servericon{
text-align: center;
}
.servericon img{
object-fit: cover;
width: 100px;
height: 100px;
border-radius: 15px;
box-shadow:0 0px 48px 0 rgba(0, 0, 0, .05);
}
/*------------------------------------------------------------------------------------------------------------*/ /*------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------スマホ向け--------------------------------------------------*/ /*--------------------------------------------------スマホ向け--------------------------------------------------*/
/*--------------------------------------------------ここから--------------------------------------------------*/ /*--------------------------------------------------ここから--------------------------------------------------*/
@@ -3718,7 +3862,7 @@ summary {
flex-shrink: 0; flex-shrink: 0;
text-align: center; text-align: center;
width:10%; width:10%;
padding: 8px auto; padding: 6px 2.6px;
margin-left: 6px; margin-left: 6px;
margin-right: 6px; margin-right: 6px;
padding-top: 6px; padding-top: 6px;
@@ -3806,7 +3950,7 @@ summary {
border: none; border: none;
} }
.btmbutton:hover{ .btmbutton:hover{
background-color: var(--background-color)FFF; background-color: var(--background-color);
color: var(--main-color); color: var(--main-color);
box-shadow:none; box-shadow:none;
} }
@@ -4328,6 +4472,17 @@ summary {
color: var(--text-color); color: var(--text-color);
} }
.ueuse .flebox .bot{
margin-top: auto;
margin-bottom: auto;
padding: 3px 8px;
margin-left: 6px;
border-radius: 10px;
font-family: 'BIZ UDGothic', sans-serif;
font-weight: bold;
text-align: center;
font-size: 12px;
}
.ueuse .photo1 img{ .ueuse .photo1 img{
object-fit: cover; object-fit: cover;
@@ -4914,6 +5069,12 @@ summary {
color:var(--dark-subtext-color); color:var(--dark-subtext-color);
} }
.ueuse .flebox .bot{
background-color: #302c2c;
border: none;
color:var(--main-color);
}
.ueuse p{ .ueuse p{
color:var(--background-color); color:var(--background-color);
} }
@@ -5014,6 +5175,13 @@ summary {
.ueuse hr{ .ueuse hr{
border-top: 1px solid var(--dark-subtext-color); border-top: 1px solid var(--dark-subtext-color);
} }
.ueuse .nsfw{
border: none;
background-color: var(--dark-background-color);
}
.ueuse .nsfw_main{
border: none;
}
.userheader h2{ .userheader h2{
color:var(--sub-color); color:var(--sub-color);
@@ -5465,4 +5633,35 @@ summary {
background-color: var(--dark-background-color); background-color: var(--dark-background-color);
color: var(--main-color); color: var(--main-color);
} }
.mini_irobtn{
background-color: var(--dark-background-color);
color: var(--main-color);
}
.mini_irobtn:hover{
background-color: var(--main-color);
color: var(--dark-background-color);;
}
.overview_cnt_l{
background-color: var(--dark-background-color);
border: none;
}
.overview_cnt_r{
background-color: var(--dark-background-color);
border: none;
}
.overview p{
color: var(--dark-text-color);
font-size: 32px;
font-family: 'BIZ UDGothic', sans-serif;
font-weight: bold;
}
.overview .p2{
color: var(--dark-subtext-color);
font-size: 12px;
font-family: 'BIZ UDGothic', sans-serif;
font-weight: normal;
}
.servericon img{
box-shadow:none;
}
} }
+208 -17
View File
@@ -26,7 +26,7 @@ body{
margin-top: 0px; margin-top: 0px;
margin-bottom: 0px; margin-bottom: 0px;
background-color: var(--main-color); background-color: var(--main-color);
width: 35%; width: 600px;
height: 100%; height: 100%;
margin-left: 0px; margin-left: 0px;
padding: 32px; padding: 32px;
@@ -62,7 +62,7 @@ body{
margin-top: 0px; margin-top: 0px;
margin-bottom: 0px; margin-bottom: 0px;
background-color: var(--main-color); background-color: var(--main-color);
width: 35%; width: 600px;
height: 100vh; height: 100vh;
margin-left: 0px; margin-left: 0px;
padding: 32px; padding: 32px;
@@ -112,12 +112,13 @@ body{
color: var(--main-color); color: var(--main-color);
font-size: 32px; font-size: 32px;
font-family: 'Zen Maru Gothic', sans-serif; font-family: 'Zen Maru Gothic', sans-serif;
margin-bottom: 12px;
} }
.textbox h2{ .textbox h2{
word-wrap: break-word; word-wrap: break-word;
margin: 0px; margin: 0px;
color: #252525; color: var(--text-color);
text-align: center; text-align: center;
font-size: 32px; font-size: 32px;
font-family: 'Zen Maru Gothic', sans-serif; font-family: 'Zen Maru Gothic', sans-serif;
@@ -126,7 +127,7 @@ body{
.textbox h3{ .textbox h3{
word-wrap: break-word; word-wrap: break-word;
margin: 0px; margin: 0px;
color: #252525; color: var(--text-color);
text-align: center; text-align: center;
font-size: 18px; font-size: 18px;
font-family: 'Zen Maru Gothic', sans-serif; font-family: 'Zen Maru Gothic', sans-serif;
@@ -136,7 +137,7 @@ body{
.textbox p{ .textbox p{
word-wrap: break-word; word-wrap: break-word;
line-height: 20px; line-height: 20px;
color: #252525; color: var(--text-color);
font-size: 16px; font-size: 16px;
font-family: 'BIZ UDPGothic', sans-serif; font-family: 'BIZ UDPGothic', sans-serif;
font-weight: normal; font-weight: normal;
@@ -147,7 +148,7 @@ body{
margin-bottom: 10px; margin-bottom: 10px;
word-wrap: break-word; word-wrap: break-word;
line-height: 20px; line-height: 20px;
color: #868686; color: var(--subtext-color);
font-size: 12px; font-size: 12px;
font-family: 'BIZ UDPGothic', sans-serif; font-family: 'BIZ UDPGothic', sans-serif;
font-weight: normal; font-weight: normal;
@@ -159,18 +160,18 @@ body{
text-align: center; text-align: center;
word-wrap: break-word; word-wrap: break-word;
line-height: 20px; line-height: 20px;
color: #868686; color: var(--subtext-color);
font-size: 12px; font-size: 12px;
font-family: 'BIZ UDPGothic', sans-serif; font-family: 'BIZ UDPGothic', sans-serif;
font-weight: normal; font-weight: normal;
} }
.textbox .p3{ .textbox .p3{
margin-top: 24px; margin-top: 12px;
text-align: center; text-align: center;
word-wrap: break-word; word-wrap: break-word;
line-height: 24px; line-height: 24px;
color: #252525; color: var(--text-color);
font-size: 22px; font-size: 22px;
font-family: 'BIZ UDPGothic', sans-serif; font-family: 'BIZ UDPGothic', sans-serif;
font-weight: bold; font-weight: bold;
@@ -179,7 +180,7 @@ body{
.textbox .maillink{ .textbox .maillink{
word-wrap: break-word; word-wrap: break-word;
line-height: 20px; line-height: 20px;
color: #4e4428; color: var(--link-color);
text-decoration: none; text-decoration: none;
font-size: 16px; font-size: 16px;
font-family: 'BIZ UDPGothic', sans-serif; font-family: 'BIZ UDPGothic', sans-serif;
@@ -210,7 +211,7 @@ body{
margin-bottom: 6px; margin-bottom: 6px;
text-align: left; text-align: left;
word-wrap: break-word; word-wrap: break-word;
color: #868686; color: var(--subtext-color);
font-size: 12px; font-size: 12px;
font-family: 'BIZ UDPGothic', sans-serif; font-family: 'BIZ UDPGothic', sans-serif;
font-weight: normal; font-weight: normal;
@@ -222,12 +223,54 @@ body{
text-align: left; text-align: left;
word-wrap: break-word; word-wrap: break-word;
line-height: 24px; line-height: 24px;
color: #252525; color: var(--text-color);
font-size: 20px; font-size: 20px;
font-family: 'BIZ UDPGothic', sans-serif; font-family: 'BIZ UDPGothic', sans-serif;
font-weight: bold; font-weight: bold;
} }
.servericon{
width: fit-content;
margin-left: auto;
margin-right: auto;
display: flex;
text-align: center;
}
.servericon img{
object-fit: cover;
width: 100px;
height: 100px;
border-radius: 15px;
box-shadow:0 0px 48px 0 rgba(0, 0, 0, .05);
}
.servericon .textzone{
margin-top: auto;
margin-bottom: auto;
display: block;
}
.servericon .textzone .p3{
margin-left: 24px;
margin-bottom: 6px;
text-align: left;
word-wrap: break-word;
line-height: 24px;
color: var(--text-color);
font-size: 24px;
font-family: 'BIZ UDPGothic', sans-serif;
font-weight: bold;
}
.servericon .textzone .p2c{
margin-left: 24px;
margin-top: 6px;
text-align: left;
word-wrap: break-word;
line-height: 20px;
color: var(--subtext-color);
font-size: 14px;
font-family: 'BIZ UDPGothic', sans-serif;
font-weight: normal;
}
.btnbox{ .btnbox{
padding-top: 16px; padding-top: 16px;
padding-bottom: 16px; padding-bottom: 16px;
@@ -354,7 +397,7 @@ label > input {
margin-top: 24px; margin-top: 24px;
margin-bottom: 24px; margin-bottom: 24px;
font-size: 16px; font-size: 16px;
color:#252525; color:var(--text-color);
text-decoration: none; text-decoration: none;
font-family: 'BIZ UDPGothic', sans-serif; font-family: 'BIZ UDPGothic', sans-serif;
font-weight: normal; font-weight: normal;
@@ -389,7 +432,7 @@ label > input {
margin-bottom: 10px; margin-bottom: 10px;
word-wrap: break-word; word-wrap: break-word;
line-height: 20px; line-height: 20px;
color: #868686; color: var(--subtext-color);
font-size: 12px; font-size: 12px;
font-family: 'BIZ UDPGothic', sans-serif; font-family: 'BIZ UDPGothic', sans-serif;
font-weight: normal; font-weight: normal;
@@ -399,7 +442,7 @@ label > input {
margin-bottom: auto; margin-bottom: auto;
margin-left: 6px; margin-left: 6px;
font-size: 16px; font-size: 16px;
color:#4e4428; color:var(--link-color);
text-decoration: none; text-decoration: none;
font-family: 'BIZ UDPGothic', sans-serif; font-family: 'BIZ UDPGothic', sans-serif;
font-weight: bold; font-weight: bold;
@@ -412,7 +455,7 @@ label > input {
border-radius: 10px; border-radius: 10px;
background: var(--background-color); background: var(--background-color);
font-family: 'Zen Maru Gothic', sans-serif; font-family: 'Zen Maru Gothic', sans-serif;
color: rgb(32,32,32); color: var(--text-color);
font-size: 1em; font-size: 1em;
line-height: 1.5; line-height: 1.5;
white-space: nowrap; white-space: nowrap;
@@ -652,7 +695,7 @@ main{
} }
main h1{ main h1{
color:#252525; color:var(--text-color);
font-size: 32px; font-size: 32px;
font-family: 'Zen Maru Gothic', sans-serif; font-family: 'Zen Maru Gothic', sans-serif;
} }
@@ -890,3 +933,151 @@ main h1{
width: 80%; width: 80%;
} }
} }
/*------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------ダークモード--------------------------------------------------*/
/*--------------------------------------------------ここから--------------------------------------------------*/
/*------------------------------------------------------------------------------------------------------------*/
@media (prefers-color-scheme: dark) {
body{
background-color: var(--dark-background-color);
}
.leftbox{
background-color: var(--main-color);
}
.leftbox h1{
color:var(--background-color);
}
.leftbox .logo p{
color:var(--background-color);
}
.leftbox2{
background-color: var(--main-color);
}
.leftbox2 h1{
color:var(--background-color);
}
.leftbox2 .logo p{
color:var(--background-color);
}
.textbox{
background-color: var(--dark-background-color);
}
.textbox h1{
color: var(--dark-text-color);
}
.textbox h2{
color: var(--dark-text-color);
}
.textbox h3{
color: var(--dark-text-color);
}
.textbox p{
color: var(--dark-text-color);
}
.textbox .p2{
color: var(--subtext-color);
}
.textbox .p2c{
color: var(--dark-subtext-color);
}
.textbox .p3{
color: var(--dark-text-color);
}
.servericon .textzone .p3{
color: var(--dark-text-color);
}
.servericon .textzone .p2c{
color: var(--dark-subtext-color);
}
.textbox .maillink{
color: var(--main-color);
}
.textbox .cntzone .usercnt{
background-color: var(--dark-sub-color);
}
.textbox .cntzone .usercnt .p1{
color: var(--dark-subtext-color);
}
.textbox .cntzone .usercnt p{
color: var(--dark-text-color);
}
.btnbox{
background-color: var(--dark-sub-color);
}
.irobutton{
background-color: var(--main-color);
color:var(--dark-background-color);
}
.sirobutton{
background-color: var(--dark-background-color);
color:var(--main-color);
}
.formarea{
background-color: var(--dark-sub-color);
}
.formarea label{
color:var(--dark-text-color);
}
.myarea{
background-color: var(--dark-background-color);
}
.myarea p{
color: var(--dark-subtext-color);
}
.ueuse2 a{
color:var(--main-color);
}
.inbox {
background: var(--dark-background-color);
color: var(--dark-text-color);
border: none;
}
.flexbtn .irobutton{
background-color: var(--main-color);
color:var(--dark-background-color);
}
.flexbtn.sirobutton{
background-color: var(--dark-sub-color);
color:var(--main-color);
}
.rolebox{
background-color: var(--dark-background-color);
border: 1px solid var(--main-color);
}
.rolebox p{
color:var(--main-color);
}
.fbtn{
background-color: var(--main-color);
color:var(--dark-sub-color);
}
.fbtn:hover{
background-color: var(--main-color);
color: var(--dark-sub-color);
}
}
+14 -10
View File
@@ -46,8 +46,8 @@ try {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -55,9 +55,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -90,8 +92,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -99,9 +101,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+15 -10
View File
@@ -42,10 +42,11 @@ try {
$error_message[] = $e->getMessage(); $error_message[] = $e->getMessage();
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -53,9 +54,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -88,8 +91,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -97,9 +100,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+42 -24
View File
@@ -51,8 +51,8 @@ try {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -60,10 +60,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = $res["role"]; $role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -96,8 +97,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -105,10 +106,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = $res["role"]; $role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -152,7 +154,6 @@ if(empty($username)){
header("Location: ../login.php"); header("Location: ../login.php");
exit; exit;
} }
$notiQuery = $pdo->prepare("SELECT COUNT(*) as notification_count FROM notification WHERE touserid = :userid AND userchk = 'none'"); $notiQuery = $pdo->prepare("SELECT COUNT(*) as notification_count FROM notification WHERE touserid = :userid AND userchk = 'none'");
$notiQuery->bindValue(':userid', $userid); $notiQuery->bindValue(':userid', $userid);
$notiQuery->execute(); $notiQuery->execute();
@@ -192,6 +193,18 @@ if( !empty($_POST['btn_submit']) ) {
$ueuse = htmlentities($_POST['ueuse']); $ueuse = htmlentities($_POST['ueuse']);
if(isset($_POST['nsfw_chk'])){
$nsfw_chk = htmlentities($_POST['nsfw_chk']);
}else{
$nsfw_chk = "false";
}
if($nsfw_chk === "true"){
$save_nsfw = "true";
}else{
$save_nsfw = "false";
}
// メッセージの入力チェック // メッセージの入力チェック
if( empty($ueuse) ) { if( empty($ueuse) ) {
$error_message[] = '内容を入力してください。'; $error_message[] = '内容を入力してください。';
@@ -337,7 +350,7 @@ if( !empty($_POST['btn_submit']) ) {
try { try {
// SQL作成 // SQL作成
$stmt = $pdo->prepare("INSERT INTO ueuse (username, account, uniqid, ueuse, photo1, photo2, video1, datetime, abi) VALUES (:username, :account, :uniqid, :ueuse, :photo1, :photo2, :video1, :datetime, :abi)"); $stmt = $pdo->prepare("INSERT INTO ueuse (username, account, uniqid, ueuse, photo1, photo2, video1, datetime, abi, nsfw) VALUES (:username, :account, :uniqid, :ueuse, :photo1, :photo2, :video1, :datetime, :abi, :nsfw)");
$stmt->bindParam(':username', $username, PDO::PARAM_STR); $stmt->bindParam(':username', $username, PDO::PARAM_STR);
$stmt->bindParam(':account', $userid, PDO::PARAM_STR); $stmt->bindParam(':account', $userid, PDO::PARAM_STR);
@@ -349,8 +362,9 @@ if( !empty($_POST['btn_submit']) ) {
$stmt->bindParam(':video1', $video1, PDO::PARAM_STR); $stmt->bindParam(':video1', $video1, PDO::PARAM_STR);
$stmt->bindParam(':datetime', $datetime, PDO::PARAM_STR); $stmt->bindParam(':datetime', $datetime, PDO::PARAM_STR);
$stmt->bindParam(':abi', $abi, PDO::PARAM_STR); $stmt->bindParam(':nsfw', $save_nsfw, PDO::PARAM_STR);
$stmt->bindParam(':abi', $abi, PDO::PARAM_STR);
// SQLクエリの実行 // SQLクエリの実行
$res = $stmt->execute(); $res = $stmt->execute();
@@ -432,6 +446,7 @@ $pdo = null;
<meta charset="utf-8"> <meta charset="utf-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
<script src="../js/console_notice.js"></script> <script src="../js/console_notice.js"></script>
<script src="../js/nsfw_event.js"></script>
<link rel="manifest" href="../manifest/manifest.json" /> <link rel="manifest" href="../manifest/manifest.json" />
<script> <script>
if ("serviceWorker" in navigator) { if ("serviceWorker" in navigator) {
@@ -473,19 +488,24 @@ if ("serviceWorker" in navigator) {
<textarea id="ueuse" placeholder="いまどうしてる?" name="ueuse"><?php if( !empty($ueuse) ){ echo htmlspecialchars($ueuse, ENT_QUOTES, 'UTF-8'); } ?></textarea> <textarea id="ueuse" placeholder="いまどうしてる?" name="ueuse"><?php if( !empty($ueuse) ){ echo htmlspecialchars($ueuse, ENT_QUOTES, 'UTF-8'); } ?></textarea>
<p>画像のEXIF情報(位置情報など)は削除されません。<br>情報漏洩に気をつけてくださいね…</p> <p>画像のEXIF情報(位置情報など)は削除されません。<br>情報漏洩に気をつけてくださいね…</p>
<div class="fxbox"> <div class="fxbox">
<label for="upload_images" id="images"> <label for="upload_images" id="images" title="画像1">
<img src="../img/sysimage/image_1.svg"> <svg><use xlink:href="../img/sysimage/image_1.svg#image"></use></svg>
<input type="file" name="upload_images" id ="upload_images" accept="image/*"> <input type="file" name="upload_images" id ="upload_images" accept="image/*">
</label> </label>
<label for="upload_images2" id="images2"> <label for="upload_images2" id="images2" style="display: none" title="画像2">
<img src="../img/sysimage/image_1.svg"> <svg><use xlink:href="../img/sysimage/image_1.svg#image"></use></svg>
<input type="file" name="upload_images2" id ="upload_images2" accept="image/*"> <input type="file" name="upload_images2" id ="upload_images2" accept="image/*">
</label> </label>
<label for="upload_videos1" id="videos1"> <label for="upload_videos1" id="videos1" title="動画1">
<img src="../img/sysimage/video_1.svg"> <svg><use xlink:href="../img/sysimage/video_1.svg#video"></use></svg>
<input type="file" name="upload_videos1" id ="upload_videos1" accept="video/*"> <input type="file" name="upload_videos1" id ="upload_videos1" accept="video/*">
</label> </label>
<div class="nsfw_button">
<input id="nsfw_chk" class="nsfw_input" type='checkbox' name="nsfw_chk" value="true"/>
<label for="nsfw_chk" class="nsfw_label" title="投稿をNSFW指定にする"><svg><use xlink:href="../img/sysimage/eye_1.svg#eye"></use></svg></label>
</div>
<input type="submit" class="ueusebtn" name="btn_submit" value="ユーズする"> <input type="submit" class="ueusebtn" name="btn_submit" value="ユーズする">
</div> </div>
</div> </div>
@@ -496,7 +516,6 @@ if ("serviceWorker" in navigator) {
var file_reader = new FileReader(); var file_reader = new FileReader();
// ファイルの読み込みを行ったら実行 // ファイルの読み込みを行ったら実行
file_reader.addEventListener('load', function(e) { file_reader.addEventListener('load', function(e) {
console.log(e.target.result);
const element = document.querySelector('#videos1'); const element = document.querySelector('#videos1');
const createElement = '<p>動画を選択しました。</p>'; const createElement = '<p>動画を選択しました。</p>';
element.insertAdjacentHTML('afterend', createElement); element.insertAdjacentHTML('afterend', createElement);
@@ -507,7 +526,6 @@ if ("serviceWorker" in navigator) {
var file_reader = new FileReader(); var file_reader = new FileReader();
// ファイルの読み込みを行ったら実行 // ファイルの読み込みを行ったら実行
file_reader.addEventListener('load', function(e) { file_reader.addEventListener('load', function(e) {
console.log(e.target.result);
const element = document.querySelector('#images2'); const element = document.querySelector('#images2');
const createElement = '<p>画像を選択しました。</p>'; const createElement = '<p>画像を選択しました。</p>';
element.insertAdjacentHTML('afterend', createElement); element.insertAdjacentHTML('afterend', createElement);
@@ -518,10 +536,10 @@ if ("serviceWorker" in navigator) {
var file_reader = new FileReader(); var file_reader = new FileReader();
// ファイルの読み込みを行ったら実行 // ファイルの読み込みを行ったら実行
file_reader.addEventListener('load', function(e) { file_reader.addEventListener('load', function(e) {
console.log(e.target.result);
const element = document.querySelector('#images'); const element = document.querySelector('#images');
const createElement = '<p>画像を選択しました。</p>'; const createElement = '<p>画像を選択しました。</p>';
element.insertAdjacentHTML('afterend', createElement); element.insertAdjacentHTML('afterend', createElement);
$("#images2").show();
}); });
file_reader.readAsText(e.target.files[0]); file_reader.readAsText(e.target.files[0]);
}); });
+43 -25
View File
@@ -47,11 +47,10 @@ try {
// 接続エラーのときエラー内容を取得する // 接続エラーのときエラー内容を取得する
$error_message[] = $e->getMessage(); $error_message[] = $e->getMessage();
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -59,10 +58,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = $res["role"]; $role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -95,8 +95,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -104,10 +104,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = $res["role"]; $role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -151,7 +152,6 @@ if(empty($username)){
header("Location: ../login.php"); header("Location: ../login.php");
exit; exit;
} }
$notiQuery = $pdo->prepare("SELECT COUNT(*) as notification_count FROM notification WHERE touserid = :userid AND userchk = 'none'"); $notiQuery = $pdo->prepare("SELECT COUNT(*) as notification_count FROM notification WHERE touserid = :userid AND userchk = 'none'");
$notiQuery->bindValue(':userid', $userid); $notiQuery->bindValue(':userid', $userid);
$notiQuery->execute(); $notiQuery->execute();
@@ -188,9 +188,20 @@ function get_mentions_userid($postText) {
} }
if( !empty($_POST['btn_submit']) ) { if( !empty($_POST['btn_submit']) ) {
$ueuse = htmlentities($_POST['ueuse']); $ueuse = htmlentities($_POST['ueuse']);
if(isset($_POST['nsfw_chk'])){
$nsfw_chk = htmlentities($_POST['nsfw_chk']);
}else{
$nsfw_chk = "false";
}
if($nsfw_chk === "true"){
$save_nsfw = "true";
}else{
$save_nsfw = "false";
}
// メッセージの入力チェック // メッセージの入力チェック
if( empty($ueuse) ) { if( empty($ueuse) ) {
$error_message[] = '内容を入力してください。'; $error_message[] = '内容を入力してください。';
@@ -337,7 +348,7 @@ if( !empty($_POST['btn_submit']) ) {
try { try {
// SQL作成 // SQL作成
$stmt = $pdo->prepare("INSERT INTO ueuse (username, account, uniqid, ueuse, photo1, photo2, video1, datetime, abi) VALUES (:username, :account, :uniqid, :ueuse, :photo1, :photo2, :video1, :datetime, :abi)"); $stmt = $pdo->prepare("INSERT INTO ueuse (username, account, uniqid, ueuse, photo1, photo2, video1, datetime, abi, nsfw) VALUES (:username, :account, :uniqid, :ueuse, :photo1, :photo2, :video1, :datetime, :abi, :nsfw)");
$stmt->bindParam(':username', $username, PDO::PARAM_STR); $stmt->bindParam(':username', $username, PDO::PARAM_STR);
$stmt->bindParam(':account', $userid, PDO::PARAM_STR); $stmt->bindParam(':account', $userid, PDO::PARAM_STR);
@@ -349,6 +360,8 @@ if( !empty($_POST['btn_submit']) ) {
$stmt->bindParam(':video1', $video1, PDO::PARAM_STR); $stmt->bindParam(':video1', $video1, PDO::PARAM_STR);
$stmt->bindParam(':datetime', $datetime, PDO::PARAM_STR); $stmt->bindParam(':datetime', $datetime, PDO::PARAM_STR);
$stmt->bindParam(':nsfw', $save_nsfw, PDO::PARAM_STR);
$stmt->bindParam(':abi', $abi, PDO::PARAM_STR); $stmt->bindParam(':abi', $abi, PDO::PARAM_STR);
// SQLクエリの実行 // SQLクエリの実行
@@ -432,6 +445,7 @@ $pdo = null;
<meta charset="utf-8"> <meta charset="utf-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
<script src="../js/console_notice.js"></script> <script src="../js/console_notice.js"></script>
<script src="../js/nsfw_event.js"></script>
<link rel="manifest" href="../manifest/manifest.json" /> <link rel="manifest" href="../manifest/manifest.json" />
<script> <script>
if ("serviceWorker" in navigator) { if ("serviceWorker" in navigator) {
@@ -499,19 +513,24 @@ if ("serviceWorker" in navigator) {
<textarea id="ueuse" placeholder="いまどうしてる?" name="ueuse"><?php if( !empty($ueuse) ){ echo htmlspecialchars($ueuse, ENT_QUOTES, 'UTF-8'); } ?></textarea> <textarea id="ueuse" placeholder="いまどうしてる?" name="ueuse"><?php if( !empty($ueuse) ){ echo htmlspecialchars($ueuse, ENT_QUOTES, 'UTF-8'); } ?></textarea>
<p>画像のEXIF情報(位置情報など)は削除されません。<br>情報漏洩に気をつけてくださいね…</p> <p>画像のEXIF情報(位置情報など)は削除されません。<br>情報漏洩に気をつけてくださいね…</p>
<div class="fxbox"> <div class="fxbox">
<label for="upload_images" id="images"> <label for="upload_images" id="images" title="画像1">
<img src="../img/sysimage/image_1.svg"> <svg><use xlink:href="../img/sysimage/image_1.svg#image"></use></svg>
<input type="file" name="upload_images" id ="upload_images" accept="image/*"> <input type="file" name="upload_images" id ="upload_images" accept="image/*">
</label> </label>
<label for="upload_images2" id="images2"> <label for="upload_images2" id="images2" style="display: none" title="画像2">
<img src="../img/sysimage/image_1.svg"> <svg><use xlink:href="../img/sysimage/image_1.svg#image"></use></svg>
<input type="file" name="upload_images2" id ="upload_images2" accept="image/*"> <input type="file" name="upload_images2" id ="upload_images2" accept="image/*">
</label> </label>
<label for="upload_videos1" id="videos1"> <label for="upload_videos1" id="videos1" title="動画1">
<img src="../img/sysimage/video_1.svg"> <svg><use xlink:href="../img/sysimage/video_1.svg#video"></use></svg>
<input type="file" name="upload_videos1" id ="upload_videos1" accept="video/*"> <input type="file" name="upload_videos1" id ="upload_videos1" accept="video/*">
</label> </label>
<div class="nsfw_button">
<input id="nsfw_chk" class="nsfw_input" type='checkbox' name="nsfw_chk" value="true"/>
<label for="nsfw_chk" class="nsfw_label" title="投稿をNSFW指定にする"><svg><use xlink:href="../img/sysimage/eye_1.svg#eye"></use></svg></label>
</div>
<input type="submit" class="ueusebtn" name="btn_submit" value="ユーズする"> <input type="submit" class="ueusebtn" name="btn_submit" value="ユーズする">
</div> </div>
</div> </div>
@@ -522,7 +541,6 @@ if ("serviceWorker" in navigator) {
var file_reader = new FileReader(); var file_reader = new FileReader();
// ファイルの読み込みを行ったら実行 // ファイルの読み込みを行ったら実行
file_reader.addEventListener('load', function(e) { file_reader.addEventListener('load', function(e) {
console.log(e.target.result);
const element = document.querySelector('#videos1'); const element = document.querySelector('#videos1');
const createElement = '<p>動画を選択しました。</p>'; const createElement = '<p>動画を選択しました。</p>';
element.insertAdjacentHTML('afterend', createElement); element.insertAdjacentHTML('afterend', createElement);
@@ -533,7 +551,6 @@ if ("serviceWorker" in navigator) {
var file_reader = new FileReader(); var file_reader = new FileReader();
// ファイルの読み込みを行ったら実行 // ファイルの読み込みを行ったら実行
file_reader.addEventListener('load', function(e) { file_reader.addEventListener('load', function(e) {
console.log(e.target.result);
const element = document.querySelector('#images2'); const element = document.querySelector('#images2');
const createElement = '<p>画像を選択しました。</p>'; const createElement = '<p>画像を選択しました。</p>';
element.insertAdjacentHTML('afterend', createElement); element.insertAdjacentHTML('afterend', createElement);
@@ -544,10 +561,10 @@ if ("serviceWorker" in navigator) {
var file_reader = new FileReader(); var file_reader = new FileReader();
// ファイルの読み込みを行ったら実行 // ファイルの読み込みを行ったら実行
file_reader.addEventListener('load', function(e) { file_reader.addEventListener('load', function(e) {
console.log(e.target.result);
const element = document.querySelector('#images'); const element = document.querySelector('#images');
const createElement = '<p>画像を選択しました。</p>'; const createElement = '<p>画像を選択しました。</p>';
element.insertAdjacentHTML('afterend', createElement); element.insertAdjacentHTML('afterend', createElement);
$("#images2").show();
}); });
file_reader.readAsText(e.target.files[0]); file_reader.readAsText(e.target.files[0]);
}); });
@@ -810,6 +827,7 @@ $(document).ready(function() {
}); });
}); });
var osho_gats = document.getElementById('osho_gats'); var osho_gats = document.getElementById('osho_gats');
$(document).on('click', '.os_exit_btn', function (event) { $(document).on('click', '.os_exit_btn', function (event) {
document.cookie = "event=done; max-age=86400"; document.cookie = "event=done; max-age=86400";
+1
View File
@@ -0,0 +1 @@
<svg id="eye" xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24"><path d="m644-428-58-58q9-47-27-88t-93-32l-58-58q17-8 34.5-12t37.5-4q75 0 127.5 52.5T660-500q0 20-4 37.5T644-428Zm128 126-58-56q38-29 67.5-63.5T832-500q-50-101-143.5-160.5T480-720q-29 0-57 4t-55 12l-62-62q41-17 84-25.5t90-8.5q151 0 269 83.5T920-500q-23 59-60.5 109.5T772-302Zm20 246L624-222q-35 11-70.5 16.5T480-200q-151 0-269-83.5T40-500q21-53 53-98.5t73-81.5L56-792l56-56 736 736-56 56ZM222-624q-29 26-53 57t-41 67q50 101 143.5 160.5T480-280q20 0 39-2.5t39-5.5l-36-38q-11 3-21 4.5t-21 1.5q-75 0-127.5-52.5T300-500q0-11 1.5-21t4.5-21l-84-82Zm319 93Zm-151 75Z"/></svg>

After

Width:  |  Height:  |  Size: 665 B

+1 -1
View File
@@ -1 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 -960 960 960" width="48" fill="#FFFAE6"><path d="M185.087-105.869q-32.507 0-55.862-23.356-23.356-23.355-23.356-55.862v-589.826q0-32.74 23.356-56.262 23.355-23.521 55.862-23.521h589.826q32.74 0 56.262 23.521 23.521 23.522 23.521 56.262v589.826q0 32.507-23.521 55.862-23.522 23.356-56.262 23.356H185.087Zm0-79.218h589.826v-589.826H185.087v589.826Zm43.565-86.826h503.696L578-481.479l-132 171-93-127-124.348 165.566Zm-43.565 86.826v-589.826 589.826Z"/></svg> <svg id="image" xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24"><path d="M185.087-105.869q-32.507 0-55.862-23.356-23.356-23.355-23.356-55.862v-589.826q0-32.74 23.356-56.262 23.355-23.521 55.862-23.521h589.826q32.74 0 56.262 23.521 23.521 23.522 23.521 56.262v589.826q0 32.507-23.521 55.862-23.522 23.356-56.262 23.356H185.087Zm0-79.218h589.826v-589.826H185.087v589.826Zm43.565-86.826h503.696L578-481.479l-132 171-93-127-124.348 165.566Zm-43.565 86.826v-589.826 589.826Z"/></svg>

Before

Width:  |  Height:  |  Size: 517 B

After

Width:  |  Height:  |  Size: 513 B

+1 -1
View File
@@ -1 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 -960 960 960" width="48" fill="#FFFAE6"><path d="m145.087-814.696 74 152h130l-74-152h89l74 152h130l-74-152h89l74 152h130l-74-152h101.826q32.74 0 56.262 23.521 23.521 23.522 23.521 56.262v509.826q0 32.507-23.521 55.862-23.522 23.356-56.262 23.356H145.087q-32.507 0-55.862-22.804-23.356-22.805-23.356-55.284v-510.956q0-32.74 23.356-56.262 23.355-23.521 55.862-23.521Zm0 231.783v357.826h669.826v-357.826H145.087Zm0 0v357.826-357.826Z"/></svg> <svg id="video" xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24"><path d="m145.087-814.696 74 152h130l-74-152h89l74 152h130l-74-152h89l74 152h130l-74-152h101.826q32.74 0 56.262 23.521 23.521 23.522 23.521 56.262v509.826q0 32.507-23.521 55.862-23.522 23.356-56.262 23.356H145.087q-32.507 0-55.862-22.804-23.356-22.805-23.356-55.284v-510.956q0-32.74 23.356-56.262 23.355-23.521 55.862-23.521Zm0 231.783v357.826h669.826v-357.826H145.087Zm0 0v357.826-357.826Z"/></svg>

Before

Width:  |  Height:  |  Size: 502 B

After

Width:  |  Height:  |  Size: 498 B

+51 -6
View File
@@ -6,17 +6,53 @@ require('db.php');
session_name('uwuzu_s_id'); session_name('uwuzu_s_id');
session_start(); session_start();
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true && isset($_COOKIE['loginid']) && isset($_SESSION['userid'])) {
$options = array(
// SQL実行失敗時に例外をスルー
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
// デフォルトフェッチモードを連想配列形式に設定
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
// SELECTで得た結果に対してもrowCountメソッドを使えるようにする
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
);
$dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
$acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$acck->bindValue(':userid', $_SESSION['userid']);
$acck->execute();
$acck_data = $acck->fetch();
if(!empty($acck_data)){
if($_COOKIE['loginid'] === $acck_data["loginid"] && $_SESSION['userid'] === $acck_data["userid"] ){
header("Location: home/index.php"); header("Location: home/index.php");
exit; exit;
}
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { }
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true && isset($_COOKIE['loginid']) && isset($_COOKIE['userid'])) {
$options = array(
// SQL実行失敗時に例外をスルー
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
// デフォルトフェッチモードを連想配列形式に設定
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
// SELECTで得た結果に対してもrowCountメソッドを使えるようにする
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
);
$dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
$acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$acck->bindValue(':userid', $_COOKIE['userid']);
$acck->execute();
$acck_data = $acck->fetch();
if(!empty($acck_data)){
if($_COOKIE['loginid'] === $acck_data["loginid"] && $_COOKIE['userid'] === $acck_data["userid"] ){
header("Location: home/index.php"); header("Location: home/index.php");
exit; exit;
}
}
} }
$servericonfile = "server/servericon.txt";
//-------------------------
$servernamefile = "server/servername.txt"; $servernamefile = "server/servername.txt";
@@ -106,10 +142,19 @@ if ("serviceWorker" in navigator) {
<?php endforeach; ?> <?php endforeach; ?>
</ul> </ul>
<?php endif; ?> <?php endif; ?>
<h1><?php echo file_get_contents($servernamefile);;?>へようこそ!</h1> <h1><?php echo file_get_contents($servernamefile);;?>へようこそ!</h1>
<?php if( !empty(file_get_contents($servericonfile)) ){ ?>
<div class="servericon">
<img src="<?php echo htmlspecialchars(file_get_contents($servericonfile), ENT_QUOTES, 'UTF-8'); ?>">
<div class="textzone">
<div class="p3"><?php echo file_get_contents($servernamefile);?></div> <div class="p3"><?php echo file_get_contents($servernamefile);?></div>
<div class="p2c"><?php echo $domain;?></div> <div class="p2c"><?php echo $domain;?></div>
</div>
</div>
<?php }else{?>
<div class="p3"><?php echo file_get_contents($servernamefile);?></div>
<div class="p2c"><?php echo $domain;?></div>
<?php }?>
<p><?php <p><?php
$sinfo = explode("\n", $serverinfo); $sinfo = explode("\n", $serverinfo);
+1 -1
View File
@@ -2,5 +2,5 @@
window.onload = function(){ window.onload = function(){
var ele = document.getElementsByTagName("body")[0]; var ele = document.getElementsByTagName("body")[0];
var n = Math.floor(Math.random() * 3); // 3枚の画像がある場合 var n = Math.floor(Math.random() * 3); // 3枚の画像がある場合
ele.style.backgroundImage = "url(img/titleimg/"+n+".png)"; ele.style.backgroundImage = "url(/img/titleimg/"+n+".png)";
} }
+10
View File
@@ -0,0 +1,10 @@
$(document).on('click', '.mini_irobtn', function(event) {
event.preventDefault();
mother = $(this).parent();
mother2 = $(mother).parent();
$(mother2).next('.nsfw_main').children().removeClass('block');
$(mother2).next('.nsfw_main').children().addClass('clear');
$(mother2).next('.nsfw_main').removeClass('nsfw_main');
$(mother2).hide();
});
+38 -6
View File
@@ -42,16 +42,48 @@ try {
// 接続エラーのときエラー内容を取得する // 接続エラーのときエラー内容を取得する
$error_message[] = $e->getMessage(); $error_message[] = $e->getMessage();
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true && isset($_COOKIE['loginid']) && isset($_SESSION['userid'])) {
$options = array(
// SQL実行失敗時に例外をスルー
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
// デフォルトフェッチモードを連想配列形式に設定
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
// SELECTで得た結果に対してもrowCountメソッドを使えるようにする
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
);
$dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
$acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$acck->bindValue(':userid', $_SESSION['userid']);
$acck->execute();
$acck_data = $acck->fetch();
if(!empty($acck_data)){
if($_COOKIE['loginid'] === $acck_data["loginid"] && $_SESSION['userid'] === $acck_data["userid"] ){
header("Location: home/index.php"); header("Location: home/index.php");
exit; exit;
}
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { }
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true && isset($_COOKIE['loginid']) && isset($_COOKIE['userid'])) {
$options = array(
// SQL実行失敗時に例外をスルー
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
// デフォルトフェッチモードを連想配列形式に設定
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
// SELECTで得た結果に対してもrowCountメソッドを使えるようにする
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
);
$dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
$acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$acck->bindValue(':userid', $_COOKIE['userid']);
$acck->execute();
$acck_data = $acck->fetch();
if(!empty($acck_data)){
if($_COOKIE['loginid'] === $acck_data["loginid"] && $_COOKIE['userid'] === $acck_data["userid"] ){
header("Location: home/index.php"); header("Location: home/index.php");
exit; exit;
}
}
} }
if( !empty($_POST['btn_submit']) ) { if( !empty($_POST['btn_submit']) ) {
+37 -48
View File
@@ -47,59 +47,48 @@ try {
$error_message[] = $e->getMessage(); $error_message[] = $e->getMessage();
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true && isset($_COOKIE['loginid']) && isset($_SESSION['userid'])) {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { $options = array(
// SQL実行失敗時に例外をスルー
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
$passQuery->bindValue(':userid', $_SESSION['userid']); // デフォルトフェッチモードを連想配列形式に設定
$passQuery->execute(); PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
$res = $passQuery->fetch(); // バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
if(empty($res["userid"])){ // SELECTで得た結果に対してもrowCountメソッドを使えるようにする
header("Location: login.php"); PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
exit; );
}elseif($_SESSION['loginid'] === $res["loginid"]){ $dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
// セッションに値をセット $acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $acck->bindValue(':userid', $_SESSION['userid']);
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $acck->execute();
$_SESSION['admin_login'] = true; $acck_data = $acck->fetch();
$_SESSION['userid'] = $userid; if(!empty($acck_data)){
$_SESSION['username'] = $username; if($_COOKIE['loginid'] === $acck_data["loginid"] && $_SESSION['userid'] === $acck_data["userid"] ){
$_SESSION['loginid'] = $res["loginid"];
setcookie('userid', $userid, time() + 60 * 60 * 24 * 14);
setcookie('username', $username, time() + 60 * 60 * 24 * 14);
setcookie('loginid', $res["loginid"], time() + 60 * 60 * 24 * 14);
setcookie('admin_login', true, time() + 60 * 60 * 24 * 14);
header("Location: home/index.php"); header("Location: home/index.php");
exit; exit;
} }
}
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true && isset($_COOKIE['loginid']) && isset($_COOKIE['userid'])) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { $options = array(
// SQL実行失敗時に例外をスルー
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
$passQuery->bindValue(':userid', $_COOKIE['userid']); // デフォルトフェッチモードを連想配列形式に設定
$passQuery->execute(); PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
$res = $passQuery->fetch(); // バッファードクエリを使う(一度に結果セットを全て取得し、サーバー負荷を軽減)
if(empty($res["userid"])){ // SELECTで得た結果に対してもrowCountメソッドを使えるようにする
header("Location: ../login.php"); PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
exit; );
}elseif($_COOKIE['loginid'] === $res["loginid"]){ $dbh = new PDO('mysql:charset=utf8mb4;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
// セッションに値をセット $acck = $dbh->prepare("SELECT userid, loginid FROM account WHERE userid = :userid");
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $acck->bindValue(':userid', $_COOKIE['userid']);
$username = $_COOKIE['username']; // クッキーから取得した値をセット $acck->execute();
$_SESSION['admin_login'] = true; $acck_data = $acck->fetch();
$_SESSION['userid'] = $userid; if(!empty($acck_data)){
$_SESSION['username'] = $username; if($_COOKIE['loginid'] === $acck_data["loginid"] && $_COOKIE['userid'] === $acck_data["userid"] ){
$_SESSION['loginid'] = $res["loginid"];
setcookie('userid', $userid, time() + 60 * 60 * 24 * 14);
setcookie('username', $username, time() + 60 * 60 * 24 * 14);
setcookie('loginid', $res["loginid"], time() + 60 * 60 * 24 * 14);
setcookie('admin_login', true, time() + 60 * 60 * 24 * 14);
header("Location: home/index.php"); header("Location: home/index.php");
exit; exit;
} }
}
} }
if( !empty($_POST['btn_submit']) ) { if( !empty($_POST['btn_submit']) ) {
@@ -226,7 +215,7 @@ if( !empty($_POST['btn_submit']) ) {
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true, PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
); );
$dbh = new PDO('mysql:charset=UTF8;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
if($onlyuser === "true"){ if($onlyuser === "true"){
$query = $dbh->prepare('SELECT * FROM invitation WHERE code = :code limit 1'); $query = $dbh->prepare('SELECT * FROM invitation WHERE code = :code limit 1');
+3 -2
View File
@@ -53,7 +53,7 @@ if (!empty($pdo)) {
$messages = array(); // 初期化 $messages = array(); // 初期化
foreach ($followList as $followUserId) { foreach ($followList as $followUserId) {
$sql = "SELECT account, username, uniqid, rpuniqid, ueuse, datetime, photo1, photo2, video1, favorite, abi, abidate FROM ueuse WHERE rpuniqid = '' AND account = :follow_account ORDER BY datetime DESC LIMIT $offset, $itemsPerPage"; $sql = "SELECT * FROM ueuse WHERE rpuniqid = '' AND account = :follow_account ORDER BY datetime DESC LIMIT $offset, $itemsPerPage";
$stmt = $dbh->prepare($sql); $stmt = $dbh->prepare($sql);
$stmt->bindValue(':follow_account', $followUserId, PDO::PARAM_STR); $stmt->bindValue(':follow_account', $followUserId, PDO::PARAM_STR);
@@ -68,7 +68,7 @@ if (!empty($pdo)) {
}); });
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える // ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
foreach ($messages as &$message) { foreach ($messages as &$message) {
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid"); $userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
$userQuery->bindValue(':userid', $message["account"]); $userQuery->bindValue(':userid', $message["account"]);
$userQuery->execute(); $userQuery->execute();
$userData = $userQuery->fetch(); $userData = $userQuery->fetch();
@@ -77,6 +77,7 @@ if (!empty($pdo)) {
$message['iconname'] = $userData['iconname']; $message['iconname'] = $userData['iconname'];
$message['headname'] = $userData['headname']; $message['headname'] = $userData['headname'];
$message['username'] = $userData['username']; $message['username'] = $userData['username'];
$message['sacinfo'] = $userData['sacinfo'];
$message['role'] = $userData['role']; $message['role'] = $userData['role'];
} }
+3 -2
View File
@@ -35,7 +35,7 @@ $messages = array();
if (!empty($pdo)) { if (!empty($pdo)) {
$sql = "SELECT account, username, uniqid, rpuniqid, ueuse, datetime, photo1, photo2, video1, favorite, abi, abidate FROM ueuse WHERE rpuniqid = '' ORDER BY datetime DESC LIMIT $offset, $itemsPerPage"; $sql = "SELECT * FROM ueuse WHERE rpuniqid = '' ORDER BY datetime DESC LIMIT $offset, $itemsPerPage";
$message_array = $pdo->query($sql); $message_array = $pdo->query($sql);
while ($row = $message_array->fetch(PDO::FETCH_ASSOC)) { while ($row = $message_array->fetch(PDO::FETCH_ASSOC)) {
@@ -45,7 +45,7 @@ if (!empty($pdo)) {
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える // ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
foreach ($messages as &$message) { foreach ($messages as &$message) {
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid"); $userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
$userQuery->bindValue(':userid', $message["account"]); $userQuery->bindValue(':userid', $message["account"]);
$userQuery->execute(); $userQuery->execute();
$userData = $userQuery->fetch(); $userData = $userQuery->fetch();
@@ -54,6 +54,7 @@ if (!empty($pdo)) {
$message['iconname'] = $userData['iconname']; $message['iconname'] = $userData['iconname'];
$message['headname'] = $userData['headname']; $message['headname'] = $userData['headname'];
$message['username'] = $userData['username']; $message['username'] = $userData['username'];
$message['sacinfo'] = $userData['sacinfo'];
$message['role'] = $userData['role']; $message['role'] = $userData['role'];
} }
+4 -3
View File
@@ -44,13 +44,13 @@ if (!empty($pdo)) {
$username = $matches[1]; $username = $matches[1];
$searchKeyword = $matches[2]; $searchKeyword = $matches[2];
$messageQuery = $dbh->prepare("SELECT account,username,ueuse,uniqid,rpuniqid,datetime,photo1,photo2,video1,favorite, abi, abidate FROM ueuse WHERE account = :username AND (ueuse LIKE :searchKeyword OR abi LIKE :searchKeyword) ORDER BY datetime DESC"); $messageQuery = $dbh->prepare("SELECT * FROM ueuse WHERE account = :username AND (ueuse LIKE :searchKeyword OR abi LIKE :searchKeyword) ORDER BY datetime DESC");
$messageQuery->bindValue(':username', $username, PDO::PARAM_STR); $messageQuery->bindValue(':username', $username, PDO::PARAM_STR);
$messageQuery->bindValue(':searchKeyword', '%' . $searchKeyword . '%', PDO::PARAM_STR); $messageQuery->bindValue(':searchKeyword', '%' . $searchKeyword . '%', PDO::PARAM_STR);
$messageQuery->execute(); $messageQuery->execute();
$message_array = $messageQuery->fetchAll(); $message_array = $messageQuery->fetchAll();
} else { } else {
$messageQuery = $dbh->prepare("SELECT account,username,ueuse,uniqid,rpuniqid,datetime,photo1,photo2,video1,favorite, abi, abidate FROM ueuse WHERE ueuse LIKE :keyword OR abi LIKE :keyword ORDER BY datetime DESC"); $messageQuery = $dbh->prepare("SELECT * FROM ueuse WHERE ueuse LIKE :keyword OR abi LIKE :keyword ORDER BY datetime DESC");
$messageQuery->bindValue(':keyword', '%' . $keyword . '%', PDO::PARAM_STR); $messageQuery->bindValue(':keyword', '%' . $keyword . '%', PDO::PARAM_STR);
$messageQuery->execute(); $messageQuery->execute();
$message_array = $messageQuery->fetchAll(); $message_array = $messageQuery->fetchAll();
@@ -63,7 +63,7 @@ if (!empty($pdo)) {
} }
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える // ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
foreach ($messages as &$message) { foreach ($messages as &$message) {
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid"); $userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
$userQuery->bindValue(':userid', $message["account"]); $userQuery->bindValue(':userid', $message["account"]);
$userQuery->execute(); $userQuery->execute();
$userData = $userQuery->fetch(); $userData = $userQuery->fetch();
@@ -72,6 +72,7 @@ if (!empty($pdo)) {
$message['iconname'] = $userData['iconname']; $message['iconname'] = $userData['iconname'];
$message['headname'] = $userData['headname']; $message['headname'] = $userData['headname'];
$message['username'] = $userData['username']; $message['username'] = $userData['username'];
$message['sacinfo'] = $userData['sacinfo'];
$message['role'] = $userData['role']; $message['role'] = $userData['role'];
} }
+3 -2
View File
@@ -46,7 +46,7 @@ if (!empty($pdo)) {
)); ));
// 投稿内容の取得(新しい順に取得) // 投稿内容の取得(新しい順に取得)
$messageQuery = $dbh->prepare("SELECT account, username, ueuse, uniqid, rpuniqid, datetime, photo1, photo2, video1, favorite, abi, abidate FROM ueuse WHERE uniqid = :ueuseid OR rpuniqid = :rpueuseid ORDER BY datetime ASC LIMIT $offset, $itemsPerPage"); $messageQuery = $dbh->prepare("SELECT * FROM ueuse WHERE uniqid = :ueuseid OR rpuniqid = :rpueuseid ORDER BY datetime ASC LIMIT $offset, $itemsPerPage");
$messageQuery->bindValue(':ueuseid', $ueuseid); $messageQuery->bindValue(':ueuseid', $ueuseid);
$messageQuery->bindValue(':rpueuseid', $ueuseid); $messageQuery->bindValue(':rpueuseid', $ueuseid);
$messageQuery->execute(); $messageQuery->execute();
@@ -61,7 +61,7 @@ if (!empty($pdo)) {
} }
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える // ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
foreach ($messages as &$message) { foreach ($messages as &$message) {
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid"); $userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
$userQuery->bindValue(':userid', $message["account"]); $userQuery->bindValue(':userid', $message["account"]);
$userQuery->execute(); $userQuery->execute();
$userData = $userQuery->fetch(); $userData = $userQuery->fetch();
@@ -70,6 +70,7 @@ if (!empty($pdo)) {
$message['iconname'] = $userData['iconname']; $message['iconname'] = $userData['iconname'];
$message['headname'] = $userData['headname']; $message['headname'] = $userData['headname'];
$message['username'] = $userData['username']; $message['username'] = $userData['username'];
$message['sacinfo'] = $userData['sacinfo'];
$message['role'] = $userData['role']; $message['role'] = $userData['role'];
} }
+3 -2
View File
@@ -48,7 +48,7 @@ if (!empty($pdo)) {
$userQuery->execute(); $userQuery->execute();
$userData = $userQuery->fetch(); $userData = $userQuery->fetch();
$messageQuery = $dbh->prepare("SELECT account,username,ueuse,uniqid,rpuniqid,datetime,photo1,photo2,video1,favorite, abi, abidate FROM ueuse WHERE favorite LIKE :userid ORDER BY datetime DESC LIMIT $offset, $itemsPerPage"); $messageQuery = $dbh->prepare("SELECT * FROM ueuse WHERE favorite LIKE :userid ORDER BY datetime DESC LIMIT $offset, $itemsPerPage");
$messageQuery->bindValue(':userid', '%,' . $uwuzuid . '%', PDO::PARAM_STR); $messageQuery->bindValue(':userid', '%,' . $uwuzuid . '%', PDO::PARAM_STR);
$messageQuery->execute(); $messageQuery->execute();
@@ -60,7 +60,7 @@ if (!empty($pdo)) {
} }
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える // ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
foreach ($messages as &$message) { foreach ($messages as &$message) {
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid"); $userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
$userQuery->bindValue(':userid', $message["account"]); $userQuery->bindValue(':userid', $message["account"]);
$userQuery->execute(); $userQuery->execute();
$userData = $userQuery->fetch(); $userData = $userQuery->fetch();
@@ -69,6 +69,7 @@ if (!empty($pdo)) {
$message['iconname'] = $userData['iconname']; $message['iconname'] = $userData['iconname'];
$message['headname'] = $userData['headname']; $message['headname'] = $userData['headname'];
$message['username'] = $userData['username']; $message['username'] = $userData['username'];
$message['sacinfo'] = $userData['sacinfo'];
$message['role'] = $userData['role']; $message['role'] = $userData['role'];
} }
+3 -2
View File
@@ -48,7 +48,7 @@ if (!empty($pdo)) {
$userQuery->execute(); $userQuery->execute();
$userData = $userQuery->fetch(); $userData = $userQuery->fetch();
$messageQuery = $dbh->prepare("SELECT account,username,ueuse,uniqid,rpuniqid,datetime,photo1,photo2,video1,favorite, abi, abidate FROM ueuse WHERE account = :userid AND rpuniqid = '' AND (photo1 NOT IN('none') OR photo2 NOT IN('none') OR video1 NOT IN('none')) ORDER BY datetime DESC LIMIT $offset, $itemsPerPage"); $messageQuery = $dbh->prepare("SELECT * FROM ueuse WHERE account = :userid AND rpuniqid = '' AND (photo1 NOT IN('none') OR photo2 NOT IN('none') OR video1 NOT IN('none')) ORDER BY datetime DESC LIMIT $offset, $itemsPerPage");
$messageQuery->bindValue(':userid', $uwuzuid); $messageQuery->bindValue(':userid', $uwuzuid);
$messageQuery->execute(); $messageQuery->execute();
$message_array = $messageQuery->fetchAll(); $message_array = $messageQuery->fetchAll();
@@ -59,7 +59,7 @@ if (!empty($pdo)) {
} }
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える // ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
foreach ($messages as &$message) { foreach ($messages as &$message) {
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid"); $userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
$userQuery->bindValue(':userid', $message["account"]); $userQuery->bindValue(':userid', $message["account"]);
$userQuery->execute(); $userQuery->execute();
$userData = $userQuery->fetch(); $userData = $userQuery->fetch();
@@ -68,6 +68,7 @@ if (!empty($pdo)) {
$message['iconname'] = $userData['iconname']; $message['iconname'] = $userData['iconname'];
$message['headname'] = $userData['headname']; $message['headname'] = $userData['headname'];
$message['username'] = $userData['username']; $message['username'] = $userData['username'];
$message['sacinfo'] = $userData['sacinfo'];
$message['role'] = $userData['role']; $message['role'] = $userData['role'];
} }
+3 -2
View File
@@ -48,7 +48,7 @@ if (!empty($pdo)) {
$userQuery->execute(); $userQuery->execute();
$userData = $userQuery->fetch(); $userData = $userQuery->fetch();
$messageQuery = $dbh->prepare("SELECT account,username,ueuse,uniqid,rpuniqid,datetime,photo1,photo2,video1,favorite, abi, abidate FROM ueuse WHERE account = :userid AND rpuniqid = ''ORDER BY datetime DESC LIMIT $offset, $itemsPerPage"); $messageQuery = $dbh->prepare("SELECT * FROM ueuse WHERE account = :userid AND rpuniqid = ''ORDER BY datetime DESC LIMIT $offset, $itemsPerPage");
$messageQuery->bindValue(':userid', $uwuzuid); $messageQuery->bindValue(':userid', $uwuzuid);
$messageQuery->execute(); $messageQuery->execute();
$message_array = $messageQuery->fetchAll(); $message_array = $messageQuery->fetchAll();
@@ -59,7 +59,7 @@ if (!empty($pdo)) {
} }
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える // ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
foreach ($messages as &$message) { foreach ($messages as &$message) {
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid"); $userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
$userQuery->bindValue(':userid', $message["account"]); $userQuery->bindValue(':userid', $message["account"]);
$userQuery->execute(); $userQuery->execute();
$userData = $userQuery->fetch(); $userData = $userQuery->fetch();
@@ -68,6 +68,7 @@ if (!empty($pdo)) {
$message['iconname'] = $userData['iconname']; $message['iconname'] = $userData['iconname'];
$message['headname'] = $userData['headname']; $message['headname'] = $userData['headname'];
$message['username'] = $userData['username']; $message['username'] = $userData['username'];
$message['sacinfo'] = $userData['sacinfo'];
$message['role'] = $userData['role']; $message['role'] = $userData['role'];
} }
+24 -5
View File
@@ -63,10 +63,9 @@ function replaceEmojisWithImages($postText) {
return $postTextWithHashtags; return $postTextWithHashtags;
} }
function replaceURLsWithLinks($postText) { function replaceURLsWithLinks($postText) {
// URLを正規表現を使って検出 // URLを正規表現を使って検出
$pattern = '/(https:\/\/[^\s]+)/'; $pattern = '/(https:\/\/[^\s<>\[\]\'"]+)/'; // 改良された正規表現
preg_match_all($pattern, $postText, $matches); preg_match_all($pattern, $postText, $matches);
// 検出したURLごとに処理を行う // 検出したURLごとに処理を行う
@@ -75,11 +74,12 @@ function replaceURLsWithLinks($postText) {
$parsedUrl = parse_url($url); $parsedUrl = parse_url($url);
$domain = isset($parsedUrl['host']) ? $parsedUrl['host'] : ''; $domain = isset($parsedUrl['host']) ? $parsedUrl['host'] : '';
// ドメインのみを表示するaタグを生成 // 不要な文字を削除してaタグを生成
$link = "<a href='$url' target='_blank'>$domain</a>"; $urlWithoutSpaces = preg_replace('/\s+/', '', $url);
$link = "<a href='$urlWithoutSpaces' target='_blank'>$domain</a>";
// URLをドメインのみを表示するaタグで置き換え // URLをドメインのみを表示するaタグで置き換え
$postText = str_replace($url, $link, $postText); $postText = preg_replace('/' . preg_quote($url, '/') . '/', $link, $postText);
} }
return $postText; return $postText;
@@ -110,6 +110,11 @@ class MessageDisplay {
echo ' <div class="idbox">'; echo ' <div class="idbox">';
echo ' <a href="/@' . htmlentities($this->value['account']) . '">@' . htmlentities($this->value['account']) . '</a>'; echo ' <a href="/@' . htmlentities($this->value['account']) . '">@' . htmlentities($this->value['account']) . '</a>';
echo ' </div>'; echo ' </div>';
if(!empty($this->value['sacinfo'])){
if($this->value['sacinfo'] === "bot"){
echo '<div class="bot">Bot</div>';
}
}
if (false !== strpos($this->value['role'], 'official')) { if (false !== strpos($this->value['role'], 'official')) {
echo ' <div class="checkicon">'; echo ' <div class="checkicon">';
echo ' <div class="check" />'; echo ' <div class="check" />';
@@ -137,6 +142,16 @@ class MessageDisplay {
echo ' </div>'; echo ' </div>';
if($this->value['nsfw'] === "true"){
echo ' <div class="nsfw" data-uniqid="' . htmlentities($this->value['uniqid']) . '">';
echo ' <p>NSFW指定がされている投稿です!<br>職場や公共の場での表示には適さない場合があります。<br>表示ボタンを押すと表示されます。</p>';
echo ' <div class="btnzone">';
echo ' <input type="button" id="nsfw_view" class="mini_irobtn" value="表示">';
echo ' </div>';
echo ' </div>';
echo ' <div class="nsfw_main" data-uniqid="' . htmlentities($this->value['uniqid']) . '">';
echo ' <div class="block">';
}
echo ' <p>' . processMarkdownAndWrapEmptyLines(replaceEmojisWithImages(replaceURLsWithLinks(nl2br($this->value['ueuse'])))) . '</h1></h2></h3></font></center></p>'; echo ' <p>' . processMarkdownAndWrapEmptyLines(replaceEmojisWithImages(replaceURLsWithLinks(nl2br($this->value['ueuse'])))) . '</h1></h2></h3></font></center></p>';
if (!empty($this->value['photo2']) && $this->value['photo2'] !== 'none') { if (!empty($this->value['photo2']) && $this->value['photo2'] !== 'none') {
@@ -164,6 +179,10 @@ class MessageDisplay {
echo '<h3>追記日時 : '. date("Y年m月d日 H:i", strtotime(htmlentities($this->value['abidate']))) . '</h3>'; echo '<h3>追記日時 : '. date("Y年m月d日 H:i", strtotime(htmlentities($this->value['abidate']))) . '</h3>';
echo '</div>'; echo '</div>';
} }
if($this->value['nsfw'] === "true"){
echo ' </div>';
echo ' </div>';
}
echo '<hr>'; echo '<hr>';
echo '<div class="favbox">'; echo '<div class="favbox">';
+15 -11
View File
@@ -46,8 +46,8 @@ try {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -55,9 +55,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -90,8 +92,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -99,9 +101,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -301,7 +305,7 @@ $pdo = null;
</div> </div>
<div> <div>
<p>この絵文字について</p> <p>本文</p>
<textarea placeholder="ここに内容" class="inbox" name="note"><?php if( !empty($_SESSION['note']) ){ echo htmlspecialchars( $_SESSION['note'], ENT_QUOTES, 'UTF-8'); } ?></textarea> <textarea placeholder="ここに内容" class="inbox" name="note"><?php if( !empty($_SESSION['note']) ){ echo htmlspecialchars( $_SESSION['note'], ENT_QUOTES, 'UTF-8'); } ?></textarea>
</div> </div>
+14 -10
View File
@@ -48,8 +48,8 @@ try {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -57,9 +57,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -92,8 +94,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -101,9 +103,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+20 -10
View File
@@ -59,8 +59,8 @@ try {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -68,8 +68,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -102,8 +105,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -111,8 +114,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -354,12 +360,14 @@ if( !empty($_POST['session_submit']) ) {
if( !empty($_POST['token_submit']) ) { if( !empty($_POST['token_submit']) ) {
$token = random_token(); $token = random_token();
$nones = "none";
$pdo->beginTransaction(); $pdo->beginTransaction();
try { try {
$stmt = $pdo->prepare("UPDATE account SET token = :token WHERE userid = :userid;"); $stmt = $pdo->prepare("UPDATE account SET token = :token, sacinfo = :new_sacinfo WHERE userid = :userid;");
$stmt->bindParam(':token', $token, PDO::PARAM_STR); $stmt->bindParam(':token', $token, PDO::PARAM_STR);
$stmt->bindParam(':new_sacinfo', $nones, PDO::PARAM_STR);
$stmt->bindValue(':userid', $userid, PDO::PARAM_STR); $stmt->bindValue(':userid', $userid, PDO::PARAM_STR);
@@ -388,12 +396,14 @@ if( !empty($_POST['token_submit']) ) {
if( !empty($_POST['token_off_submit']) ) { if( !empty($_POST['token_off_submit']) ) {
$token = ''; $token = '';
$new_sacinfo = 'none';
$pdo->beginTransaction(); $pdo->beginTransaction();
try { try {
$stmt = $pdo->prepare("UPDATE account SET token = :token WHERE userid = :userid;"); $stmt = $pdo->prepare("UPDATE account SET token = :token,sacinfo = :sacinfo WHERE userid = :userid;");
$stmt->bindParam(':token', $token, PDO::PARAM_STR); $stmt->bindParam(':token', $token, PDO::PARAM_STR);
$stmt->bindParam(':sacinfo', $new_sacinfo, PDO::PARAM_STR);
$stmt->bindValue(':userid', $userid, PDO::PARAM_STR); $stmt->bindValue(':userid', $userid, PDO::PARAM_STR);
+14 -10
View File
@@ -43,8 +43,8 @@ try {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -52,9 +52,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -87,8 +89,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -96,9 +98,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+9
View File
@@ -7,6 +7,10 @@ require('../db.php');
session_name('uwuzu_s_id'); session_name('uwuzu_s_id');
session_start(); session_start();
$servericonfile = "../server/servericon.txt";
//-------------------------
$contactfile = "../server/contact.txt"; $contactfile = "../server/contact.txt";
$adminfile = "../server/admininfo.txt"; $adminfile = "../server/admininfo.txt";
@@ -90,6 +94,11 @@ $count2 = $result2->num_rows;
<div class="terms"> <div class="terms">
<h1>サーバー情報</h1> <h1>サーバー情報</h1>
<?php if( !empty(file_get_contents($servericonfile)) ){ ?>
<div class="servericon">
<img src="<?php echo htmlspecialchars(file_get_contents($servericonfile), ENT_QUOTES, 'UTF-8'); ?>">
</div>
<?php }?>
<div class="p3"><?php echo file_get_contents($servernamefile);?></div> <div class="p3"><?php echo file_get_contents($servernamefile);?></div>
<div class="p2c"><?php echo $domain;?></div> <div class="p2c"><?php echo $domain;?></div>
<hr> <hr>
+15 -10
View File
@@ -44,8 +44,8 @@ try {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -53,9 +53,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -88,8 +90,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -97,9 +99,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -175,6 +179,7 @@ $pdo = null;
<meta charset="utf-8"> <meta charset="utf-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
<script src="../js/console_notice.js"></script> <script src="../js/console_notice.js"></script>
<script src="../js/nsfw_event.js"></script>
<meta name="viewport" content="width=device-width,initial-scale=1"> <meta name="viewport" content="width=device-width,initial-scale=1">
<link rel="apple-touch-icon" type="image/png" href="../favicon/apple-touch-icon-180x180.png"> <link rel="apple-touch-icon" type="image/png" href="../favicon/apple-touch-icon-180x180.png">
<link rel="icon" type="image/png" href="../favicon/icon-192x192.png"> <link rel="icon" type="image/png" href="../favicon/icon-192x192.png">
View File
+9
View File
@@ -26,6 +26,7 @@ daichimarukana < 「うぃずゆー(With you)」「うぃじゅー(witzou)」「
## 4. 開発言語は? ## 4. 開発言語は?
uwuzuはPHPとJS、HTML(プログラミング言語じゃないか)、CSSで作られています! uwuzuはPHPとJS、HTML(プログラミング言語じゃないか)、CSSで作られています!
ライブラリはjQueryを導入しています! ライブラリはjQueryを導入しています!
使用している画像は友人またはGoogle Icons様より使わせて頂いております!
## 5. サーバーの建て方 ## 5. サーバーの建て方
まず、Apache2とPHP 8とmysql Ver 15が導入されているサーバーを準備します! まず、Apache2とPHP 8とmysql Ver 15が導入されているサーバーを準備します!
@@ -55,6 +56,7 @@ PHP 8では事前にGDを有効化しておいてください!(QRコードの
- admin(varchar(25)) 管理者アカウントなら「yes」、それ以外なら「none」と入力。 - admin(varchar(25)) 管理者アカウントなら「yes」、それ以外なら「none」と入力。
- authcode(varchar(256)) 二段階認証用キー保存用 - authcode(varchar(256)) 二段階認証用キー保存用
- backupcode(varchar(256)) 二段階認証のバックアップコード保存用 - backupcode(varchar(256)) 二段階認証のバックアップコード保存用
- sacinfo(varchar(256)) 特殊アカウント識別用
### emoji ### emoji
- sysid(INT)(AUTO_INCREMENT) アカウントが追加されるとカウントされるシステム用ID - sysid(INT)(AUTO_INCREMENT) アカウントが追加されるとカウントされるシステム用ID
@@ -92,6 +94,7 @@ PHP 8では事前にGDを有効化しておいてください!(QRコードの
- favorite(text) いいね保存用 - favorite(text) いいね保存用
- abi(text) 投稿者の追記保存用 - abi(text) 投稿者の追記保存用
- abidate(datetime) 追記日時保存用 - abidate(datetime) 追記日時保存用
- nsfw(varchar(25)) NSFW指定有無保存用
### notification ### notification
- sysid(INT)(AUTO_INCREMENT) 通知されるとカウントされるシステム用ID - sysid(INT)(AUTO_INCREMENT) 通知されるとカウントされるシステム用ID
@@ -140,11 +143,17 @@ PHP 8では事前にGDを有効化しておいてください!(QRコードの
- 404imagepath.txt : 404ページに表示する画像パス保存用 - 404imagepath.txt : 404ページに表示する画像パス保存用
- 503imagepath.txt : 503ページに表示する画像パス保存用 - 503imagepath.txt : 503ページに表示する画像パス保存用
- admininfo.txt : 管理者名(てすとまる/@sampledayo) - admininfo.txt : 管理者名(てすとまる/@sampledayo)
- banurldomain.txt : 投稿禁止URLドメイン
- banuserid.txt : 登録禁止ユーザーid
- admininfo.txt : 管理者名(てすとまる/@sampledayo)
- contact.txt : 管理者への連絡用メアド(sample@test.com) - contact.txt : 管理者への連絡用メアド(sample@test.com)
- info.txt : サーバー登録時に表示されるメッセージ(好きな内容) - info.txt : サーバー登録時に表示されるメッセージ(好きな内容)
- privacypolicy.txt : プライバシーポリシー(サーバーのプライバシーポリシーを記載) - privacypolicy.txt : プライバシーポリシー(サーバーのプライバシーポリシーを記載)
- servaricon.txt : サーバーアイコンのURL
- servername.txt : サーバー名(てすとさば) - servername.txt : サーバー名(てすとさば)
- serverstop.txt : サーバー停止ページで表示するメッセージ
- terms.txt : 利用規約(サーバーの利用規約を記載) - terms.txt : 利用規約(サーバーの利用規約を記載)
- textsize.txt : 最大文字数
- uwuzuabout.txt : このファイル(uwuzuを改造した場合は書き換え) - uwuzuabout.txt : このファイル(uwuzuを改造した場合は書き換え)
- uwuzuinfo.txt : uwuzuのバージョン等記載(uwuzuを改造した場合は書き換え) - uwuzuinfo.txt : uwuzuのバージョン等記載(uwuzuを改造した場合は書き換え)
- uwuzurelease.txt : uwuzuのバージョン等記載(uwuzuを改造した場合は書き換え) - uwuzurelease.txt : uwuzuのバージョン等記載(uwuzuを改造した場合は書き換え)
+2 -2
View File
@@ -1,4 +1,4 @@
uwuzu uwuzu
1.2.22 1.2.23
2023/09/12 2023/09/16
daichimarukana,putonfps daichimarukana,putonfps
+20
View File
@@ -1,6 +1,26 @@
## リリースノートだぜぇぇぇぇぇぇい!!!!!!! ## リリースノートだぜぇぇぇぇぇぇい!!!!!!!
ここにはuwuzuの更新情報を載せてくぜぇ~!(いやまてテンションおかしいだろ...) ここにはuwuzuの更新情報を載せてくぜぇ~!(いやまてテンションおかしいだろ...)
## Version 1.2.23
リリース日:2023/09/16
アカウント登録ができない問題を修正しました。
Botアカウントであることをわかりやすくする機能を実装しました。
画像の2つめの添付ボタンを1つ目を押してから表示するようにしました。
ログインループ問題を修正しました。
投稿内URLのバグを修正しました。
投稿にNSFW指定をすることができるようにする機能を実装しました!
NSFW指定をすると意図しない投稿の表示を防ぐことが出来ます!
※APIには適用されません。
誤字を修正しました。
UIを一部変更しました。
脆弱性を修正しました。
サーバー設定画面にサーバーの概要表示を追加しました。
カスタマイズ機能を微調整しました。
サーバーアイコン機能を実装しました!
アカウント登録画面をダークモード対応にしました!
DBに変更があるためaccountにsacinfo[varchar(256)]を、ueuseにnsfw[varchar(25)]を追加してください。
uwuzu-database.sqlも更新済みです。
## Version 1.2.22 ## Version 1.2.22
リリース日:2023/09/12 リリース日:2023/09/12
カスタマイズ機能を微調整しました。 カスタマイズ機能を微調整しました。
+14 -10
View File
@@ -56,8 +56,8 @@ try {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -65,9 +65,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -100,8 +102,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -109,9 +111,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+42 -10
View File
@@ -46,8 +46,8 @@ try {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -55,8 +55,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -89,8 +92,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -98,8 +101,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -159,7 +165,7 @@ if( !empty($pdo) ) {
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true, PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
)); ));
$userQuery = $dbh->prepare("SELECT username, userid, profile, role FROM account WHERE userid = :userid"); $userQuery = $dbh->prepare("SELECT username, userid, profile, role, token FROM account WHERE userid = :userid");
$userQuery->bindValue(':userid', $userid); $userQuery->bindValue(':userid', $userid);
$userQuery->execute(); $userQuery->execute();
$userData = $userQuery->fetch(); $userData = $userQuery->fetch();
@@ -183,6 +189,14 @@ if( !empty($pdo) ) {
if( !empty($_POST['btn_submit']) ) { if( !empty($_POST['btn_submit']) ) {
$im_bot = $_POST['im_bot'];
if($im_bot === "true"){
$saveim_bot = "bot";
}else{
$saveim_bot = "none";
}
// 空白除去 // 空白除去
$username = $_POST['username']; $username = $_POST['username'];
@@ -227,12 +241,13 @@ if( !empty($_POST['btn_submit']) ) {
try { try {
// SQL作成 // SQL作成
$stmt = $pdo->prepare("UPDATE account SET username = :username, mailadds = :mailadds, profile = :profile WHERE userid = :userid;"); $stmt = $pdo->prepare("UPDATE account SET username = :username, mailadds = :mailadds, profile = :profile, sacinfo = :saveimbot WHERE userid = :userid;");
// 他の値をセット // 他の値をセット
$stmt->bindParam(':username', $username, PDO::PARAM_STR); $stmt->bindParam(':username', $username, PDO::PARAM_STR);
$stmt->bindParam(':mailadds', $mailadds, PDO::PARAM_STR); $stmt->bindParam(':mailadds', $mailadds, PDO::PARAM_STR);
$stmt->bindParam(':profile', $profile, PDO::PARAM_STR); $stmt->bindParam(':profile', $profile, PDO::PARAM_STR);
$stmt->bindParam(':saveimbot', $saveim_bot, PDO::PARAM_STR);
// 条件を指定 // 条件を指定
// 以下の部分を適切な条件に置き換えてください // 以下の部分を適切な条件に置き換えてください
@@ -761,6 +776,23 @@ $pdo = null;
<textarea id="profile" type="text" placeholder="" class="inbox" name="profile" value=""><?php if( !empty($userdata['profile']) ){ echo htmlspecialchars( $userdata['profile'], ENT_QUOTES, 'UTF-8'); } ?></textarea> <textarea id="profile" type="text" placeholder="" class="inbox" name="profile" value=""><?php if( !empty($userdata['profile']) ){ echo htmlspecialchars( $userdata['profile'], ENT_QUOTES, 'UTF-8'); } ?></textarea>
</div> </div>
<?php if(!empty($userData['token'])){?>
<p>このアカウントがBotであることを公開する</p>
<div class="switch_button">
<?php if($sacinfo === "bot"){?>
<input id="im_bot" class="switch_input" type='checkbox' name="im_bot" value="true" checked/>
<label for="im_bot" class="switch_label"></label>
<?php }else{?>
<input id="im_bot" class="switch_input" type='checkbox' name="im_bot" value="true" />
<label for="im_bot" class="switch_label"></label>
<?php }?>
</div>
<?php }elseif($userData['token']==='ice'){ ?>
<p>アカウントが凍結されているためBotであることの設定変更はできません。</p>
<?php }?>
<input type="submit" class = "irobutton" name="btn_submit" value="情報更新"> <input type="submit" class = "irobutton" name="btn_submit" value="情報更新">
<hr> <hr>
+14 -10
View File
@@ -43,8 +43,8 @@ try {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -52,9 +52,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -87,8 +89,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -96,9 +98,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+14 -10
View File
@@ -67,8 +67,8 @@ try {
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -76,9 +76,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -111,8 +113,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -120,9 +122,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+14 -10
View File
@@ -67,8 +67,8 @@ try {
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -76,9 +76,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -111,8 +113,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -120,9 +122,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+14 -10
View File
@@ -61,8 +61,8 @@ try {
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -70,9 +70,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -105,8 +107,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -114,9 +116,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+14 -10
View File
@@ -64,8 +64,8 @@ try {
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -73,9 +73,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -108,8 +110,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -117,9 +119,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+284
View File
@@ -0,0 +1,284 @@
<?php
$servericonfile = "../server/servericon.txt";
$servernamefile = "../server/servername.txt";
$serverinfofile = '../server/info.txt';
$serverinfo = file_get_contents($serverinfofile);
$servertermsfile = '../server/terms.txt';
$serverterms = file_get_contents($servertermsfile);
$serverprvfile = '../server/privacypolicy.txt';
$serverprv = file_get_contents($serverprvfile);
$contactfile = "../server/contact.txt";
$adminfile = "../server/admininfo.txt";
$serverstopfile = "../server/serverstop.txt";
$onlyuserfile = "../server/onlyuser.txt";
$err404imagefile = "../server/404imagepath.txt";
$robots = "../robots.txt";
function createUniqId(){
list($msec, $sec) = explode(" ", microtime());
$hashCreateTime = $sec.floor($msec*1000000);
$hashCreateTime = strrev($hashCreateTime);
return base_convert($hashCreateTime,10,36);
}
function random_code($length = 8){
return substr(str_shuffle('1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'), 0, $length);
}
require('../db.php');
// 変数の初期化
$datetime = array();
$user_name = null;
$message = array();
$message_data = null;
$error_message = array();
$pdo = null;
$stmt = null;
$res = null;
$option = null;
session_name('uwuzu_s_id');
session_start();
session_regenerate_id(true);
try {
$option = array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::MYSQL_ATTR_MULTI_STATEMENTS => false
);
$pdo = new PDO('mysql:charset=UTF8;dbname='.DB_NAME.';host='.DB_HOST , DB_USER, DB_PASS, $option);
} catch(PDOException $e) {
// 接続エラーのときエラー内容を取得する
$error_message[] = $e->getMessage();
}
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute();
$res = $passQuery->fetch();
if(empty($res["userid"])){
header("Location: ../login.php");
exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット
$userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid;
$_SESSION['username'] = $username;
$_SESSION['loginid'] = $res["loginid"];
setcookie('userid', $userid, [
'expires' => time() + 60 * 60 * 24 * 14,
'path' => '/',
'samesite' => 'lax',
]);
setcookie('username', $username,[
'expires' => time() + 60 * 60 * 24 * 14,
'path' => '/',
'samesite' => 'lax',
]);
setcookie('loginid', $res["loginid"],[
'expires' => time() + 60 * 60 * 24 * 14,
'path' => '/',
'samesite' => 'lax',
]);
setcookie('admin_login', true,[
'expires' => time() + 60 * 60 * 24 * 14,
'path' => '/',
'samesite' => 'lax',
]);
}else{
header("Location: ../login.php");
exit;
}
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute();
$res = $passQuery->fetch();
if(empty($res["userid"])){
header("Location: ../login.php");
exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット
$userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid;
$_SESSION['username'] = $username;
$_SESSION['loginid'] = $res["loginid"];
setcookie('userid', $userid,[
'expires' => time() + 60 * 60 * 24 * 14,
'path' => '/',
'samesite' => 'lax',
]);
setcookie('username', $username,[
'expires' => time() + 60 * 60 * 24 * 14,
'path' => '/',
'samesite' => 'lax',
]);
setcookie('loginid', $res["loginid"],[
'expires' => time() + 60 * 60 * 24 * 14,
'path' => '/',
'samesite' => 'lax',
]);
setcookie('admin_login', true,[
'expires' => time() + 60 * 60 * 24 * 14,
'path' => '/',
'samesite' => 'lax',
]);
}else{
header("Location: ../login.php");
exit;
}
} else {
// ログインが許可されていない場合、ログインページにリダイレクト
header("Location: ../login.php");
exit;
}
if(empty($userid)){
header("Location: ../login.php");
exit;
}
if(empty($username)){
header("Location: ../login.php");
exit;
}
if(!($res["admin"] === "yes")){
header("Location: ../login.php");
exit;
}
$notiQuery = $pdo->prepare("SELECT COUNT(*) as notification_count FROM notification WHERE touserid = :userid AND userchk = 'none'");
$notiQuery->bindValue(':userid', $userid);
$notiQuery->execute();
$notiData = $notiQuery->fetch(PDO::FETCH_ASSOC);
$notificationcount = $notiData['notification_count'];
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
//User
$result = $mysqli->query("SELECT userid FROM account");
$count1 = $result->num_rows;
//ueuse
$result2 = $mysqli->query("SELECT uniqid FROM ueuse");
$count2 = $result2->num_rows;
//emoji
$result3 = $mysqli->query("SELECT sysid FROM emoji");
$count3 = $result3->num_rows;
//bot
$result4 = $mysqli->query("SELECT userid FROM account WHERE sacinfo = 'bot'");
$count4 = $result4->num_rows;
require('../logout/logout.php');
?>
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="../css/home.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
<script src="../js/console_notice.js"></script>
<meta name="viewport" content="width=device-width,initial-scale=1">
<link rel="apple-touch-icon" type="image/png" href="../favicon/apple-touch-icon-180x180.png">
<link rel="icon" type="image/png" href="../favicon/icon-192x192.png">
<title>サーバー概要 - <?php echo file_get_contents($servernamefile);?></title>
</head>
<body>
<?php require('../require/leftbox.php');?>
<main>
<?php if( !empty($error_message) ): ?>
<ul class="errmsg">
<?php foreach( $error_message as $value ): ?>
<p> <?php echo $value; ?></p>
<?php endforeach; ?>
</ul>
<?php endif; ?>
<div class="admin_settings">
<?php require('settings_left_menu.php');?>
<div class="admin_right">
<div class="formarea">
<h1>サーバー概要</h1>
<?php if( !empty(file_get_contents($servericonfile)) ){ ?>
<div class="servericon">
<img src="<?php echo htmlspecialchars(file_get_contents($servericonfile), ENT_QUOTES, 'UTF-8'); ?>">
</div>
<?php }?>
<p>サーバー名</p>
<p><?php if( !empty(file_get_contents($servernamefile)) ){ echo htmlspecialchars(file_get_contents($servernamefile), ENT_QUOTES, 'UTF-8'); } ?></p>
<hr>
<p>サーバー紹介メッセージ</p>
<p><?php $sinfo = explode("\n", $serverinfo); foreach ($sinfo as $info) { echo htmlspecialchars($info); }?></p>
<hr>
<p>サーバー管理者の名前</p>
<p><?php if( !empty(file_get_contents($adminfile)) ){ echo htmlspecialchars(file_get_contents($adminfile), ENT_QUOTES, 'UTF-8'); } ?></p>
<hr>
<p>サーバーへのお問い合わせ用メールアドレス</p>
<p><?php if( !empty(file_get_contents($contactfile)) ){ echo htmlspecialchars(file_get_contents($contactfile), ENT_QUOTES, 'UTF-8'); } ?></p>
<hr>
<p>統計情報</p>
<div class="overview">
<div class="overview_cnt_l">
<div class="p2">ユーザー数</div>
<p><?php echo htmlentities($count1);?></p>
</div>
<div class="overview_cnt_r">
<div class="p2">投稿数</div>
<p><?php echo htmlentities($count2);?></p>
</div>
</div>
<div class="overview">
<div class="overview_cnt_l">
<div class="p2">カスタム絵文字数</div>
<p><?php echo htmlentities($count3);?></p>
</div>
<div class="overview_cnt_r">
<div class="p2">Botアカウント数</div>
<p><?php echo htmlentities($count4);?></p>
</div>
</div>
</div>
</div>
</div>
</main>
<?php require('../require/rightbox.php');?>
<?php require('../require/botbox.php');?>
</body>
</html>
+14 -10
View File
@@ -67,8 +67,8 @@ try {
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -76,9 +76,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -111,8 +113,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -120,9 +122,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+38 -10
View File
@@ -1,4 +1,5 @@
<?php <?php
$servericonfile = "../server/servericon.txt";
$servernamefile = "../server/servername.txt"; $servernamefile = "../server/servername.txt";
@@ -67,8 +68,8 @@ try {
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -76,9 +77,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -111,8 +114,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -120,9 +123,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -221,6 +226,9 @@ if (!empty($pdo)) {
if( !empty($_POST['btn_submit']) ) { if( !empty($_POST['btn_submit']) ) {
// 空白除去 // 空白除去
$servericon = $_POST['servericon'];
$servername = $_POST['servername']; $servername = $_POST['servername'];
$serverinfo = $_POST['serverinfo']; $serverinfo = $_POST['serverinfo'];
@@ -260,6 +268,12 @@ if( !empty($_POST['btn_submit']) ) {
$serverstop = $_POST['serverstop']; $serverstop = $_POST['serverstop'];
//鯖icon
$file = fopen($servericonfile, 'w');
$data = $servericon;
fputs($file, $data);
fclose($file);
//鯖名 //鯖名
$file = fopen($servernamefile, 'w'); $file = fopen($servernamefile, 'w');
$data = $servername; $data = $servername;
@@ -345,23 +359,37 @@ require('../logout/logout.php');
<div class="admin_right"> <div class="admin_right">
<form class="formarea" enctype="multipart/form-data" method="post"> <form class="formarea" enctype="multipart/form-data" method="post">
<h1>サーバー設定</h1> <h1>サーバー設定</h1>
<?php if( !empty(file_get_contents($servericonfile)) ){ ?>
<div class="servericon">
<img src="<?php echo htmlspecialchars(file_get_contents($servericonfile), ENT_QUOTES, 'UTF-8'); ?>">
</div>
<?php }?>
<div>
<p>サーバーアイコン</p>
<div class="p2">サーバー登録画面などに表示されます。<br>自動的に角が丸くなります。<br>URLより設定してください。</div>
<input id="servericon" placeholder="https://~" class="inbox" type="text" name="servericon" value="<?php if( !empty(file_get_contents($servericonfile)) ){ echo htmlspecialchars(file_get_contents($servericonfile), ENT_QUOTES, 'UTF-8'); } ?>">
</div>
<div> <div>
<p>サーバー名</p> <p>サーバー名</p>
<div class="p2">サーバー名です。</div>
<input id="servername" placeholder="uwuzuさ~ば~" class="inbox" type="text" name="servername" value="<?php if( !empty(file_get_contents($servernamefile)) ){ echo htmlspecialchars(file_get_contents($servernamefile), ENT_QUOTES, 'UTF-8'); } ?>"> <input id="servername" placeholder="uwuzuさ~ば~" class="inbox" type="text" name="servername" value="<?php if( !empty(file_get_contents($servernamefile)) ){ echo htmlspecialchars(file_get_contents($servernamefile), ENT_QUOTES, 'UTF-8'); } ?>">
</div> </div>
<div> <div>
<p>サーバー紹介メッセージ</p> <p>サーバー紹介メッセージ</p>
<div class="p2">サーバーの紹介メッセージです。</div>
<textarea id="serverinfo" placeholder="たのしいさーばーです" class="inbox" type="text" name="serverinfo"><?php $sinfo = explode("\n", $serverinfo); foreach ($sinfo as $info) { echo $info; }?></textarea> <textarea id="serverinfo" placeholder="たのしいさーばーです" class="inbox" type="text" name="serverinfo"><?php $sinfo = explode("\n", $serverinfo); foreach ($sinfo as $info) { echo $info; }?></textarea>
</div> </div>
<div> <div>
<p>サーバー管理者の名前</p> <p>サーバー管理者の名前</p>
<div class="p2">サーバー管理者名です。</div>
<input id="serveradminname" placeholder="わたし" class="inbox" type="text" name="serveradminname" value="<?php if( !empty(file_get_contents($adminfile)) ){ echo htmlspecialchars(file_get_contents($adminfile), ENT_QUOTES, 'UTF-8'); } ?>"> <input id="serveradminname" placeholder="わたし" class="inbox" type="text" name="serveradminname" value="<?php if( !empty(file_get_contents($adminfile)) ){ echo htmlspecialchars(file_get_contents($adminfile), ENT_QUOTES, 'UTF-8'); } ?>">
</div> </div>
<div> <div>
<p>サーバーへのお問い合わせ用メールアドレス</p> <p>サーバーへのお問い合わせ用メールアドレス</p>
<div class="p2">ユーザーからのお問い合わせメアドです。</div>
<input id="servermailadds" placeholder="" class="inbox" type="text" name="servermailadds" value="<?php if( !empty(file_get_contents($contactfile)) ){ echo htmlspecialchars(file_get_contents($contactfile), ENT_QUOTES, 'UTF-8'); } ?>"> <input id="servermailadds" placeholder="" class="inbox" type="text" name="servermailadds" value="<?php if( !empty(file_get_contents($contactfile)) ){ echo htmlspecialchars(file_get_contents($contactfile), ENT_QUOTES, 'UTF-8'); } ?>">
</div> </div>
+1
View File
@@ -1,5 +1,6 @@
<?php ?> <?php ?>
<div class="admin_left"> <div class="admin_left">
<a href="overview_admin" class="admin_leftbtn">概要</a>
<a href="serveradmin" class="admin_leftbtn">サーバー設定</a> <a href="serveradmin" class="admin_leftbtn">サーバー設定</a>
<a href="useradmin" class="admin_leftbtn">ユーザー管理</a> <a href="useradmin" class="admin_leftbtn">ユーザー管理</a>
<a href="codeadmin" class="admin_leftbtn">招待コード発行所</a> <a href="codeadmin" class="admin_leftbtn">招待コード発行所</a>
+14 -10
View File
@@ -67,8 +67,8 @@ try {
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -76,9 +76,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -111,8 +113,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -120,9 +122,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+14 -10
View File
@@ -69,8 +69,8 @@ try {
} }
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -78,9 +78,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -113,8 +115,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -122,9 +124,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+42 -22
View File
@@ -53,8 +53,8 @@ try {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -62,10 +62,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = $res["role"]; $role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -98,8 +99,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -107,10 +108,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = $res["role"]; $role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -204,6 +206,18 @@ if( !empty($_POST['btn_submit']) ) {
$ueuse = htmlentities($_POST['ueuse']); $ueuse = htmlentities($_POST['ueuse']);
if(isset($_POST['nsfw_chk'])){
$nsfw_chk = htmlentities($_POST['nsfw_chk']);
}else{
$nsfw_chk = "false";
}
if($nsfw_chk === "true"){
$save_nsfw = "true";
}else{
$save_nsfw = "false";
}
// メッセージの入力チェック // メッセージの入力チェック
if( empty($ueuse) ) { if( empty($ueuse) ) {
$error_message[] = '内容を入力してください。'; $error_message[] = '内容を入力してください。';
@@ -350,7 +364,7 @@ if( !empty($_POST['btn_submit']) ) {
try { try {
// SQL作成 // SQL作成
$stmt = $pdo->prepare("INSERT INTO ueuse (username, account, uniqid, rpuniqid, ueuse, photo1, photo2, video1, datetime, abi) VALUES (:username, :account, :uniqid, :rpuniqid, :ueuse, :photo1, :photo2, :video1, :datetime, :abi)"); $stmt = $pdo->prepare("INSERT INTO ueuse (username, account, uniqid, rpuniqid, ueuse, photo1, photo2, video1, datetime, abi, nsfw) VALUES (:username, :account, :uniqid, :rpuniqid, :ueuse, :photo1, :photo2, :video1, :datetime, :abi, :nsfw)");
$stmt->bindParam(':username', $username, PDO::PARAM_STR); $stmt->bindParam(':username', $username, PDO::PARAM_STR);
$stmt->bindParam(':account', $userid, PDO::PARAM_STR); $stmt->bindParam(':account', $userid, PDO::PARAM_STR);
@@ -365,6 +379,8 @@ if( !empty($_POST['btn_submit']) ) {
$stmt->bindParam(':abi', $abi, PDO::PARAM_STR); $stmt->bindParam(':abi', $abi, PDO::PARAM_STR);
$stmt->bindParam(':nsfw', $save_nsfw, PDO::PARAM_STR);
// SQLクエリの実行 // SQLクエリの実行
$res = $stmt->execute(); $res = $stmt->execute();
@@ -484,6 +500,7 @@ $pdo = null;
<link rel="stylesheet" href="../css/home.css"> <link rel="stylesheet" href="../css/home.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
<script src="../js/console_notice.js"></script> <script src="../js/console_notice.js"></script>
<script src="../js/nsfw_event.js"></script>
<meta name="viewport" content="width=device-width,initial-scale=1"> <meta name="viewport" content="width=device-width,initial-scale=1">
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<link rel="apple-touch-icon" type="image/png" href="../favicon/apple-touch-icon-180x180.png"> <link rel="apple-touch-icon" type="image/png" href="../favicon/apple-touch-icon-180x180.png">
@@ -513,19 +530,24 @@ $pdo = null;
<textarea id="ueuse" placeholder="へんし~ん!!!" name="ueuse"><?php if( !empty($_SESSION['ueuse']) ){ echo htmlentities( $_SESSION['ueuse'], ENT_QUOTES, 'UTF-8'); } ?></textarea> <textarea id="ueuse" placeholder="へんし~ん!!!" name="ueuse"><?php if( !empty($_SESSION['ueuse']) ){ echo htmlentities( $_SESSION['ueuse'], ENT_QUOTES, 'UTF-8'); } ?></textarea>
<p>画像のEXIF情報(位置情報など)は削除されません。<br>情報漏洩に気をつけてくださいね…</p> <p>画像のEXIF情報(位置情報など)は削除されません。<br>情報漏洩に気をつけてくださいね…</p>
<div class="fxbox"> <div class="fxbox">
<label for="upload_images" id="images"> <label for="upload_images" id="images" title="画像1">
<img src="../img/sysimage/image_1.svg"> <svg><use xlink:href="../img/sysimage/image_1.svg#image"></use></svg>
<input type="file" name="upload_images" id ="upload_images" accept="image/*"> <input type="file" name="upload_images" id ="upload_images" accept="image/*">
</label> </label>
<label for="upload_images2" id="images2"> <label for="upload_images2" id="images2" style="display: none" title="画像2">
<img src="../img/sysimage/image_1.svg"> <svg><use xlink:href="../img/sysimage/image_1.svg#image"></use></svg>
<input type="file" name="upload_images2" id ="upload_images2" accept="image/*"> <input type="file" name="upload_images2" id ="upload_images2" accept="image/*">
</label> </label>
<label for="upload_videos1" id="videos1"> <label for="upload_videos1" id="videos1" title="動画1">
<img src="../img/sysimage/video_1.svg"> <svg><use xlink:href="../img/sysimage/video_1.svg#video"></use></svg>
<input type="file" name="upload_videos1" id ="upload_videos1" accept="video/*"> <input type="file" name="upload_videos1" id ="upload_videos1" accept="video/*">
</label> </label>
<div class="nsfw_button">
<input id="nsfw_chk" class="nsfw_input" type='checkbox' name="nsfw_chk" value="true"/>
<label for="nsfw_chk" class="nsfw_label" title="投稿をNSFW指定にする"><svg><use xlink:href="../img/sysimage/eye_1.svg#eye"></use></svg></label>
</div>
<input type="submit" class="ueusebtn" name="btn_submit" value="返信する"> <input type="submit" class="ueusebtn" name="btn_submit" value="返信する">
</div> </div>
</div> </div>
@@ -536,7 +558,6 @@ $pdo = null;
var file_reader = new FileReader(); var file_reader = new FileReader();
// ファイルの読み込みを行ったら実行 // ファイルの読み込みを行ったら実行
file_reader.addEventListener('load', function(e) { file_reader.addEventListener('load', function(e) {
console.log(e.target.result);
const element = document.querySelector('#videos1'); const element = document.querySelector('#videos1');
const createElement = '<p>動画を選択しました。</p>'; const createElement = '<p>動画を選択しました。</p>';
element.insertAdjacentHTML('afterend', createElement); element.insertAdjacentHTML('afterend', createElement);
@@ -547,7 +568,6 @@ $pdo = null;
var file_reader = new FileReader(); var file_reader = new FileReader();
// ファイルの読み込みを行ったら実行 // ファイルの読み込みを行ったら実行
file_reader.addEventListener('load', function(e) { file_reader.addEventListener('load', function(e) {
console.log(e.target.result);
const element = document.querySelector('#images2'); const element = document.querySelector('#images2');
const createElement = '<p>画像を選択しました。</p>'; const createElement = '<p>画像を選択しました。</p>';
element.insertAdjacentHTML('afterend', createElement); element.insertAdjacentHTML('afterend', createElement);
@@ -558,10 +578,10 @@ $pdo = null;
var file_reader = new FileReader(); var file_reader = new FileReader();
// ファイルの読み込みを行ったら実行 // ファイルの読み込みを行ったら実行
file_reader.addEventListener('load', function(e) { file_reader.addEventListener('load', function(e) {
console.log(e.target.result);
const element = document.querySelector('#images'); const element = document.querySelector('#images');
const createElement = '<p>画像を選択しました。</p>'; const createElement = '<p>画像を選択しました。</p>';
element.insertAdjacentHTML('afterend', createElement); element.insertAdjacentHTML('afterend', createElement);
$("#images2").show();
}); });
file_reader.readAsText(e.target.files[0]); file_reader.readAsText(e.target.files[0]);
}); });
+15 -12
View File
@@ -47,8 +47,8 @@ try {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -56,10 +56,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = $res["role"]; $role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -92,8 +93,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -101,10 +102,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = $res["role"]; $role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -405,6 +407,7 @@ $pdo = null;
<head> <head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script>
<script src="../js/console_notice.js"></script> <script src="../js/console_notice.js"></script>
<script src="../js/nsfw_event.js"></script>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1"> <meta name="viewport" content="width=device-width,initial-scale=1">
<link rel="stylesheet" href="../css/home.css"> <link rel="stylesheet" href="../css/home.css">
+14 -12
View File
@@ -47,8 +47,8 @@ try {
if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) { if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_SESSION['userid']); $passQuery->bindValue(':userid', htmlentities($_SESSION['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -56,10 +56,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){ }elseif($_SESSION['loginid'] === $res["loginid"] && $_SESSION['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_SESSION['userid']; // セッションに格納されている値をそのままセット $userid = htmlentities($_SESSION['userid']); // セッションに格納されている値をそのままセット
$username = $_SESSION['username']; // セッションに格納されている値をそのままセット $username = htmlentities($_SESSION['username']); // セッションに格納されている値をそのままセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = $res["role"]; $role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
@@ -92,8 +93,8 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
} elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) { } elseif (isset($_COOKIE['admin_login']) && $_COOKIE['admin_login'] == true) {
$passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role FROM account WHERE userid = :userid"); $passQuery = $pdo->prepare("SELECT username,userid,loginid,admin,role,sacinfo FROM account WHERE userid = :userid");
$passQuery->bindValue(':userid', $_COOKIE['userid']); $passQuery->bindValue(':userid', htmlentities($_COOKIE['userid']));
$passQuery->execute(); $passQuery->execute();
$res = $passQuery->fetch(); $res = $passQuery->fetch();
if(empty($res["userid"])){ if(empty($res["userid"])){
@@ -101,10 +102,11 @@ if(isset($_SESSION['admin_login']) && $_SESSION['admin_login'] === true) {
exit; exit;
}elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){ }elseif($_COOKIE['loginid'] === $res["loginid"] && $_COOKIE['userid'] === $res["userid"]){
// セッションに値をセット // セッションに値をセット
$userid = $_COOKIE['userid']; // クッキーから取得した値をセット $userid = htmlentities($_COOKIE['userid']); // クッキーから取得した値をセット
$username = $_COOKIE['username']; // クッキーから取得した値をセット $username = htmlentities($_COOKIE['username']); // クッキーから取得した値をセット
$loginid = $res["loginid"]; $loginid = htmlentities($res["loginid"]);
$role = $res["role"]; $role = htmlentities($res["role"]);
$sacinfo = htmlentities($res["sacinfo"]);
$_SESSION['admin_login'] = true; $_SESSION['admin_login'] = true;
$_SESSION['userid'] = $userid; $_SESSION['userid'] = $userid;
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
+64 -5
View File
@@ -2,8 +2,8 @@
-- version 5.2.1 -- version 5.2.1
-- https://www.phpmyadmin.net/ -- https://www.phpmyadmin.net/
-- --
-- ホスト: ひみつ♡() -- ホスト: ひみつ
-- 生成日時: 2023-09-02 18:20:50 -- 生成日時: 2023-09-16 15:15:33
-- サーバのバージョン: 10.4.28-MariaDB -- サーバのバージョン: 10.4.28-MariaDB
-- PHP のバージョン: 8.2.4 -- PHP のバージョン: 8.2.4
@@ -18,7 +18,7 @@ SET time_zone = "+00:00";
/*!40101 SET NAMES utf8mb4 */; /*!40101 SET NAMES utf8mb4 */;
-- --
-- データベース: `nandemo` -- データベース: `account`
-- --
-- -------------------------------------------------------- -- --------------------------------------------------------
@@ -44,7 +44,25 @@ CREATE TABLE `account` (
`follower` text NOT NULL, `follower` text NOT NULL,
`admin` varchar(50) NOT NULL, `admin` varchar(50) NOT NULL,
`authcode` varchar(256) NOT NULL, `authcode` varchar(256) NOT NULL,
`backupcode` varchar(256) NOT NULL `backupcode` varchar(256) NOT NULL,
`sacinfo` varchar(256) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- --------------------------------------------------------
--
-- テーブルの構造 `ads`
--
CREATE TABLE `ads` (
`sysid` int(11) NOT NULL,
`uniqid` varchar(512) NOT NULL,
`url` varchar(512) NOT NULL,
`image_url` varchar(512) NOT NULL,
`memo` text NOT NULL,
`start_date` datetime NOT NULL,
`limit_date` datetime NOT NULL,
`datetime` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- -------------------------------------------------------- -- --------------------------------------------------------
@@ -109,6 +127,22 @@ CREATE TABLE `notification` (
-- -------------------------------------------------------- -- --------------------------------------------------------
--
-- テーブルの構造 `report`
--
CREATE TABLE `report` (
`sysid` int(11) NOT NULL,
`uniqid` varchar(256) NOT NULL,
`userid` varchar(500) NOT NULL,
`report_userid` varchar(500) NOT NULL,
`msg` text NOT NULL,
`datetime` datetime NOT NULL,
`admin_chk` varchar(25) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- --------------------------------------------------------
-- --
-- テーブルの構造 `role` -- テーブルの構造 `role`
-- --
@@ -140,7 +174,8 @@ CREATE TABLE `ueuse` (
`datetime` datetime NOT NULL, `datetime` datetime NOT NULL,
`favorite` text NOT NULL, `favorite` text NOT NULL,
`abi` text NOT NULL, `abi` text NOT NULL,
`abidate` datetime NOT NULL `abidate` datetime NOT NULL,
`nsfw` varchar(25) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- --
@@ -153,6 +188,12 @@ CREATE TABLE `ueuse` (
ALTER TABLE `account` ALTER TABLE `account`
ADD PRIMARY KEY (`sysid`); ADD PRIMARY KEY (`sysid`);
--
-- テーブルのインデックス `ads`
--
ALTER TABLE `ads`
ADD PRIMARY KEY (`sysid`);
-- --
-- テーブルのインデックス `emoji` -- テーブルのインデックス `emoji`
-- --
@@ -177,6 +218,12 @@ ALTER TABLE `notice`
ALTER TABLE `notification` ALTER TABLE `notification`
ADD PRIMARY KEY (`sysid`); ADD PRIMARY KEY (`sysid`);
--
-- テーブルのインデックス `report`
--
ALTER TABLE `report`
ADD PRIMARY KEY (`sysid`);
-- --
-- テーブルのインデックス `role` -- テーブルのインデックス `role`
-- --
@@ -199,6 +246,12 @@ ALTER TABLE `ueuse`
ALTER TABLE `account` ALTER TABLE `account`
MODIFY `sysid` int(11) NOT NULL AUTO_INCREMENT; MODIFY `sysid` int(11) NOT NULL AUTO_INCREMENT;
--
-- テーブルの AUTO_INCREMENT `ads`
--
ALTER TABLE `ads`
MODIFY `sysid` int(11) NOT NULL AUTO_INCREMENT;
-- --
-- テーブルの AUTO_INCREMENT `emoji` -- テーブルの AUTO_INCREMENT `emoji`
-- --
@@ -223,6 +276,12 @@ ALTER TABLE `notice`
ALTER TABLE `notification` ALTER TABLE `notification`
MODIFY `sysid` int(11) NOT NULL AUTO_INCREMENT; MODIFY `sysid` int(11) NOT NULL AUTO_INCREMENT;
--
-- テーブルの AUTO_INCREMENT `report`
--
ALTER TABLE `report`
MODIFY `sysid` int(11) NOT NULL AUTO_INCREMENT;
-- --
-- テーブルの AUTO_INCREMENT `role` -- テーブルの AUTO_INCREMENT `role`
-- --