mirror of
https://github.com/Daichimarukana/uwuzu.git
synced 2026-06-04 19:14:41 +00:00
uwuzu v1.6.12 Hapuego
This commit is contained in:
+173
-172
@@ -38,192 +38,193 @@ if (safetext(isset($_POST['userid'])) && safetext(isset($_POST['account_id'])) &
|
||||
if ($is_login === false) {
|
||||
echo json_encode(['success' => false, 'error' => '認証に失敗しました。(AUTH_INVALID)']);
|
||||
exit;
|
||||
}
|
||||
}elseif(is_sameUserid($userid, $is_login["userid"]) === true){
|
||||
$userid = $is_login["userid"];
|
||||
|
||||
$settings_type = safetext($_POST['settings_type']);
|
||||
|
||||
$settings_type = safetext($_POST['settings_type']);
|
||||
if($settings_type == "icon"){
|
||||
if(isset($_FILES["data"])){
|
||||
if (!(empty($_FILES['data']['name']))) {
|
||||
$uploadedFile = $_FILES['data'];
|
||||
$beforeUploadError = check_upload_error($uploadedFile, __DIR__.'/../usericons/');
|
||||
if($beforeUploadError === null){
|
||||
if(check_mime($uploadedFile['tmp_name'])){
|
||||
$extension = convert_mime(check_mime($uploadedFile['tmp_name']));
|
||||
delete_exif($extension, $uploadedFile['tmp_name']);
|
||||
resizeImage($uploadedFile['tmp_name'], 512, 512);
|
||||
|
||||
if($settings_type == "icon"){
|
||||
if(isset($_FILES["data"])){
|
||||
if (!(empty($_FILES['data']['name']))) {
|
||||
$uploadedFile = $_FILES['data'];
|
||||
if(check_mime($uploadedFile['tmp_name'])){
|
||||
$extension = convert_mime(check_mime($uploadedFile['tmp_name']));
|
||||
delete_exif($extension, $uploadedFile['tmp_name']);
|
||||
resizeImage($uploadedFile['tmp_name'], 512, 512);
|
||||
|
||||
if(AMS3_CHKS == "true"){
|
||||
$usericonurl = getUserData($pdo, $userid)["iconname"];
|
||||
if(filter_var($usericonurl, FILTER_VALIDATE_URL)){
|
||||
$s3delresult = deleteAmazonS3($usericonurl);
|
||||
if(AMS3_CHKS == "true"){
|
||||
$usericonurl = getUserData($pdo, $userid)["iconname"];
|
||||
if(filter_var($usericonurl, FILTER_VALIDATE_URL)){
|
||||
$s3delresult = deleteAmazonS3($usericonurl);
|
||||
}else{
|
||||
$s3delresult = true;
|
||||
}
|
||||
if($s3delresult == true){
|
||||
$s3result = uploadAmazonS3($uploadedFile['tmp_name']);
|
||||
}else{
|
||||
$s3result = false;
|
||||
}
|
||||
}else{
|
||||
if(check_mime($uploadedFile['tmp_name']) == "image/webp"){
|
||||
$newFilename = createUniqId() . '-'.$userid.'.webp';
|
||||
}else{
|
||||
$newFilename = createUniqId() . '-'.$userid.'.' . $extension;
|
||||
}
|
||||
$uploadedPath = 'usericons/' . $newFilename;
|
||||
$result = move_uploaded_file($uploadedFile['tmp_name'], '../'.$uploadedPath);
|
||||
|
||||
if ($result) {
|
||||
$iconName = $uploadedPath; // 保存されたファイルのパスを使用
|
||||
} else {
|
||||
$beforeUploadError = check_upload_error($uploadedFile, __DIR__.'/../usericons/') ?? "ERROR";
|
||||
$error_message[] = 'アップロード失敗!(1)エラーコード:' .$beforeUploadError.'';
|
||||
}
|
||||
}
|
||||
if(isset($s3result)){
|
||||
if($s3result == false){
|
||||
$error_message[] = 'アップロード失敗!(1)エラーコード: S3ERROR';
|
||||
}else{
|
||||
$iconName = $s3result; // S3に保存されたファイルのパスを使用
|
||||
}
|
||||
}
|
||||
}else{
|
||||
$s3delresult = true;
|
||||
}
|
||||
if($s3delresult == true){
|
||||
$s3result = uploadAmazonS3($uploadedFile['tmp_name']);
|
||||
}else{
|
||||
$s3result = false;
|
||||
$error_message[] = "使用できない画像形式です。(FILE_UPLOAD_DEKINAKATTA)";
|
||||
}
|
||||
}else{
|
||||
if(check_mime($uploadedFile['tmp_name']) == "image/webp"){
|
||||
$newFilename = createUniqId() . '-'.$userid.'.webp';
|
||||
}else{
|
||||
$newFilename = createUniqId() . '-'.$userid.'.' . $extension;
|
||||
}
|
||||
$uploadedPath = 'usericons/' . $newFilename;
|
||||
$result = move_uploaded_file($uploadedFile['tmp_name'], '../'.$uploadedPath);
|
||||
|
||||
if ($result) {
|
||||
$iconName = $uploadedPath; // 保存されたファイルのパスを使用
|
||||
} else {
|
||||
$errnum = $uploadedFile['error'];
|
||||
if($errnum === 1){$errcode = "FILE_DEKASUGUI_PHP_INI_KAKUNIN";}
|
||||
if($errnum === 2){$errcode = "FILE_DEKASUGUI_HTML_KAKUNIN";}
|
||||
if($errnum === 3){$errcode = "FILE_SUKOSHIDAKE_UPLOAD";}
|
||||
if($errnum === 4){$errcode = "FILE_UPLOAD_DEKINAKATTA";}
|
||||
if($errnum === 6){$errcode = "TMP_FOLDER_NAI";}
|
||||
if($errnum === 7){$errcode = "FILE_KAKIKOMI_SIPPAI";}
|
||||
if($errnum === 8){$errcode = "PHPINFO()_KAKUNIN";}
|
||||
$error_message[] = 'アップロード失敗!(1)エラーコード:' .$errcode.'';
|
||||
}
|
||||
}
|
||||
if(isset($s3result)){
|
||||
if($s3result == false){
|
||||
$error_message[] = 'アップロード失敗!(1)エラーコード: S3ERROR';
|
||||
}else{
|
||||
$iconName = $s3result; // S3に保存されたファイルのパスを使用
|
||||
}
|
||||
}
|
||||
}else{
|
||||
$error_message[] = "使用できない画像形式です。(FILE_UPLOAD_DEKINAKATTA)";
|
||||
}
|
||||
}else{
|
||||
$error_message[] = 'アイコン画像を選択してください(PHOTO_SELECT_PLEASE)';
|
||||
}
|
||||
|
||||
if(empty($error_message)) {
|
||||
$currentIconPath = getUserData($pdo, $userid)["iconname"];
|
||||
|
||||
$pdo->beginTransaction();
|
||||
try {
|
||||
$stmt = $pdo->prepare("UPDATE account SET iconname = :iconname WHERE userid = :userid");
|
||||
$stmt->bindValue(':iconname', $iconName, PDO::PARAM_STR);
|
||||
$stmt->bindValue(':userid', $userid, PDO::PARAM_STR);
|
||||
$res = $stmt->execute();
|
||||
$res = $pdo->commit();
|
||||
} catch (Exception $e) {
|
||||
$pdo->rollBack();
|
||||
}
|
||||
|
||||
if ($res) {
|
||||
if ($currentIconPath) {
|
||||
unlink('../' . $currentIconPath);
|
||||
}
|
||||
echo json_encode(['success' => true]);
|
||||
exit;
|
||||
} else {
|
||||
echo json_encode(['success' => false, 'error' => '更新に失敗しました']);
|
||||
exit;
|
||||
}
|
||||
|
||||
// プリペアドステートメントを削除
|
||||
$stmt = null;
|
||||
}else{
|
||||
echo json_encode(['success' => false, 'error' => $error_message[0]]);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($settings_type == "header"){
|
||||
if(isset($_FILES["data"])){
|
||||
if (!(empty($_FILES['data']['name']))) {
|
||||
$uploadedFile = $_FILES['data'];
|
||||
if(check_mime($uploadedFile['tmp_name'])){
|
||||
$extension = pathinfo($uploadedFile['name'], PATHINFO_EXTENSION);
|
||||
delete_exif($extension, $uploadedFile['tmp_name']);
|
||||
resizeImage($uploadedFile['tmp_name'], 2048, 1024);
|
||||
|
||||
if(AMS3_CHKS == "true"){
|
||||
$userheadurl = getUserData($pdo, $userid)["headname"];
|
||||
if(filter_var($userheadurl, FILTER_VALIDATE_URL)){
|
||||
$s3delresult = deleteAmazonS3($userheadurl);
|
||||
}else{
|
||||
$s3delresult = true;
|
||||
}
|
||||
if($s3delresult == true){
|
||||
$s3result = uploadAmazonS3($uploadedFile['tmp_name']);
|
||||
}else{
|
||||
$s3result = false;
|
||||
}
|
||||
}else{
|
||||
if(check_mime($uploadedFile['tmp_name']) == "image/webp"){
|
||||
$newFilename = createUniqId() . '-'.$userid.'.webp';
|
||||
}else{
|
||||
$newFilename = createUniqId() . '-'.$userid.'.' . $extension;
|
||||
}
|
||||
$uploadedPath = 'userheads/' . $newFilename;
|
||||
$result = move_uploaded_file($uploadedFile['tmp_name'], '../'.$uploadedPath);
|
||||
|
||||
if ($result) {
|
||||
$headName = $uploadedPath; // 保存されたファイルのパスを使用
|
||||
} else {
|
||||
$errnum = $uploadedFile['error'];
|
||||
if($errnum === 1){$errcode = "FILE_DEKASUGUI_PHP_INI_KAKUNIN";}
|
||||
if($errnum === 2){$errcode = "FILE_DEKASUGUI_HTML_KAKUNIN";}
|
||||
if($errnum === 3){$errcode = "FILE_SUKOSHIDAKE_UPLOAD";}
|
||||
if($errnum === 4){$errcode = "FILE_UPLOAD_DEKINAKATTA";}
|
||||
if($errnum === 6){$errcode = "TMP_FOLDER_NAI";}
|
||||
if($errnum === 7){$errcode = "FILE_KAKIKOMI_SIPPAI";}
|
||||
if($errnum === 8){$errcode = "PHPINFO()_KAKUNIN";}
|
||||
$error_message[] = 'アップロード失敗!(2)エラーコード:' .$errcode.'';
|
||||
}
|
||||
}
|
||||
if(isset($s3result)){
|
||||
if($s3result == false){
|
||||
$error_message[] = 'アップロード失敗!(2)エラーコード: S3ERROR';
|
||||
}else{
|
||||
$headName = $s3result; // S3に保存されたファイルのパスを使用
|
||||
}
|
||||
$error_message[] = 'アップロード失敗!(1)エラーコード:' .$beforeUploadError.'';
|
||||
}
|
||||
}else{
|
||||
$error_message[] = "使用できない画像形式です。(FILE_UPLOAD_DEKINAKATTA)";
|
||||
$error_message[] = 'アイコン画像を選択してください(PHOTO_SELECT_PLEASE)';
|
||||
}
|
||||
}else{
|
||||
$error_message[] = 'アイコン画像を選択してください(PHOTO_SELECT_PLEASE)';
|
||||
}
|
||||
|
||||
if(empty($error_message)) {
|
||||
$currentHeadPath = getUserData($pdo, $userid)["headname"];
|
||||
|
||||
if(empty($error_message)) {
|
||||
$currentIconPath = getUserData($pdo, $userid)["iconname"];
|
||||
|
||||
$pdo->beginTransaction();
|
||||
try {
|
||||
$stmt = $pdo->prepare("UPDATE account SET iconname = :iconname WHERE userid = :userid");
|
||||
$stmt->bindValue(':iconname', $iconName, PDO::PARAM_STR);
|
||||
$stmt->bindValue(':userid', $userid, PDO::PARAM_STR);
|
||||
$res = $stmt->execute();
|
||||
$res = $pdo->commit();
|
||||
} catch (Exception $e) {
|
||||
$pdo->rollBack();
|
||||
}
|
||||
|
||||
$pdo->beginTransaction();
|
||||
try {
|
||||
$stmt = $pdo->prepare("UPDATE account SET headname = :headname WHERE userid = :userid");
|
||||
$stmt->bindValue(':headname', $headName, PDO::PARAM_STR);
|
||||
$stmt->bindValue(':userid', $userid, PDO::PARAM_STR);
|
||||
$res = $stmt->execute();
|
||||
$res = $pdo->commit();
|
||||
} catch (Exception $e) {
|
||||
$pdo->rollBack();
|
||||
}
|
||||
|
||||
if ($res) {
|
||||
if ($currentHeadPath) {
|
||||
unlink('../' . $currentHeadPath);
|
||||
if ($res) {
|
||||
if ($currentIconPath) {
|
||||
unlink('../' . $currentIconPath);
|
||||
}
|
||||
echo json_encode(['success' => true]);
|
||||
exit;
|
||||
} else {
|
||||
echo json_encode(['success' => false, 'error' => '更新に失敗しました']);
|
||||
exit;
|
||||
}
|
||||
echo json_encode(['success' => true]);
|
||||
exit;
|
||||
} else {
|
||||
echo json_encode(['success' => false, 'error' => '更新に失敗しました']);
|
||||
|
||||
// プリペアドステートメントを削除
|
||||
$stmt = null;
|
||||
}else{
|
||||
echo json_encode(['success' => false, 'error' => $error_message[0]]);
|
||||
exit;
|
||||
}
|
||||
|
||||
// プリペアドステートメントを削除
|
||||
$stmt = null;
|
||||
}else{
|
||||
echo json_encode(['success' => false, 'error' => $error_message[0]]);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
if($settings_type == "header"){
|
||||
if(isset($_FILES["data"])){
|
||||
if (!(empty($_FILES['data']['name']))) {
|
||||
$uploadedFile = $_FILES['data'];
|
||||
$beforeUploadError = check_upload_error($uploadedFile, __DIR__.'/../userheads/');
|
||||
if($beforeUploadError === null){
|
||||
if(check_mime($uploadedFile['tmp_name'])){
|
||||
$extension = convert_mime(check_mime($uploadedFile['tmp_name']));
|
||||
delete_exif($extension, $uploadedFile['tmp_name']);
|
||||
resizeImage($uploadedFile['tmp_name'], 2048, 1024);
|
||||
|
||||
if(AMS3_CHKS == "true"){
|
||||
$userheadurl = getUserData($pdo, $userid)["headname"];
|
||||
if(filter_var($userheadurl, FILTER_VALIDATE_URL)){
|
||||
$s3delresult = deleteAmazonS3($userheadurl);
|
||||
}else{
|
||||
$s3delresult = true;
|
||||
}
|
||||
if($s3delresult == true){
|
||||
$s3result = uploadAmazonS3($uploadedFile['tmp_name']);
|
||||
}else{
|
||||
$s3result = false;
|
||||
}
|
||||
}else{
|
||||
if(check_mime($uploadedFile['tmp_name']) == "image/webp"){
|
||||
$newFilename = createUniqId() . '-'.$userid.'.webp';
|
||||
}else{
|
||||
$newFilename = createUniqId() . '-'.$userid.'.' . $extension;
|
||||
}
|
||||
$uploadedPath = 'userheads/' . $newFilename;
|
||||
$result = move_uploaded_file($uploadedFile['tmp_name'], '../'.$uploadedPath);
|
||||
|
||||
if ($result) {
|
||||
$headName = $uploadedPath; // 保存されたファイルのパスを使用
|
||||
} else {
|
||||
$beforeUploadError = check_upload_error($uploadedFile, __DIR__.'/../userheads/') ?? "ERROR";
|
||||
$error_message[] = 'アップロード失敗!(2)エラーコード:' .$beforeUploadError.'';
|
||||
}
|
||||
}
|
||||
if(isset($s3result)){
|
||||
if($s3result == false){
|
||||
$error_message[] = 'アップロード失敗!(2)エラーコード: S3ERROR';
|
||||
}else{
|
||||
$headName = $s3result; // S3に保存されたファイルのパスを使用
|
||||
}
|
||||
}
|
||||
}else{
|
||||
$error_message[] = "使用できない画像形式です。(FILE_UPLOAD_DEKINAKATTA)";
|
||||
}
|
||||
}else{
|
||||
$error_message[] = 'アップロード失敗!(2)エラーコード:' .$beforeUploadError.'';
|
||||
}
|
||||
}else{
|
||||
$error_message[] = 'アイコン画像を選択してください(PHOTO_SELECT_PLEASE)';
|
||||
}
|
||||
|
||||
if(empty($error_message)) {
|
||||
$currentHeadPath = getUserData($pdo, $userid)["headname"];
|
||||
|
||||
$pdo->beginTransaction();
|
||||
try {
|
||||
$stmt = $pdo->prepare("UPDATE account SET headname = :headname WHERE userid = :userid");
|
||||
$stmt->bindValue(':headname', $headName, PDO::PARAM_STR);
|
||||
$stmt->bindValue(':userid', $userid, PDO::PARAM_STR);
|
||||
$res = $stmt->execute();
|
||||
$res = $pdo->commit();
|
||||
} catch (Exception $e) {
|
||||
$pdo->rollBack();
|
||||
}
|
||||
|
||||
if ($res) {
|
||||
if ($currentHeadPath) {
|
||||
unlink('../' . $currentHeadPath);
|
||||
}
|
||||
echo json_encode(['success' => true]);
|
||||
exit;
|
||||
} else {
|
||||
echo json_encode(['success' => false, 'error' => '更新に失敗しました']);
|
||||
exit;
|
||||
}
|
||||
|
||||
// プリペアドステートメントを削除
|
||||
$stmt = null;
|
||||
}else{
|
||||
echo json_encode(['success' => false, 'error' => $error_message[0]]);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
}
|
||||
}else{
|
||||
echo json_encode(['success' => false, 'error' => '認証に失敗しました。(AUTH_INVALID)']);
|
||||
exit;
|
||||
}
|
||||
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user