|
@@ -4,7 +4,58 @@
|
|
|
* Helps identify what's limiting file uploads
|
|
* Helps identify what's limiting file uploads
|
|
|
*/
|
|
*/
|
|
|
|
|
|
|
|
-// Start session
|
|
|
|
|
|
|
+// Handle test upload first - before any HTML output
|
|
|
|
|
+if (isset($_GET['action']) && $_GET['action'] === 'test' && $_SERVER['REQUEST_METHOD'] === 'POST') {
|
|
|
|
|
+ // Start session
|
|
|
|
|
+ if (session_status() === PHP_SESSION_NONE) {
|
|
|
|
|
+ session_start();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ require_once '../includes/config.php';
|
|
|
|
|
+ require_once '../includes/database.php';
|
|
|
|
|
+ require_once '../includes/auth.php';
|
|
|
|
|
+
|
|
|
|
|
+ // Require authentication
|
|
|
|
|
+ $auth = new Auth();
|
|
|
|
|
+ $auth->requireAuth();
|
|
|
|
|
+
|
|
|
|
|
+ header('Content-Type: application/json');
|
|
|
|
|
+
|
|
|
|
|
+ $result = [
|
|
|
|
|
+ 'success' => false,
|
|
|
|
|
+ 'size' => 0,
|
|
|
|
|
+ 'error' => 'No file uploaded',
|
|
|
|
|
+ 'php_info' => [
|
|
|
|
|
+ 'upload_max_filesize' => ini_get('upload_max_filesize'),
|
|
|
|
|
+ 'post_max_size' => ini_get('post_max_size'),
|
|
|
|
|
+ 'memory_limit' => ini_get('memory_limit')
|
|
|
|
|
+ ],
|
|
|
|
|
+ 'server_info' => [
|
|
|
|
|
+ 'content_length' => $_SERVER['CONTENT_LENGTH'] ?? 0,
|
|
|
|
|
+ 'content_type' => $_SERVER['CONTENT_TYPE'] ?? 'unknown'
|
|
|
|
|
+ ]
|
|
|
|
|
+ ];
|
|
|
|
|
+
|
|
|
|
|
+ if (isset($_FILES['test_file'])) {
|
|
|
|
|
+ $file = $_FILES['test_file'];
|
|
|
|
|
+ $result['size'] = $file['size'];
|
|
|
|
|
+ $result['original_name'] = $file['name'];
|
|
|
|
|
+ $result['type'] = $file['type'];
|
|
|
|
|
+ $result['error_code'] = $file['error'];
|
|
|
|
|
+
|
|
|
|
|
+ if ($file['error'] === UPLOAD_ERR_OK) {
|
|
|
|
|
+ $result['success'] = true;
|
|
|
|
|
+ $result['message'] = 'Upload successful';
|
|
|
|
|
+ } else {
|
|
|
|
|
+ $result['error'] = getUploadErrorMessage($file['error']);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ echo json_encode($result);
|
|
|
|
|
+ exit;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+// Start session for main page
|
|
|
if (session_status() === PHP_SESSION_NONE) {
|
|
if (session_status() === PHP_SESSION_NONE) {
|
|
|
session_start();
|
|
session_start();
|
|
|
}
|
|
}
|
|
@@ -196,44 +247,6 @@ server {
|
|
|
</html>
|
|
</html>
|
|
|
|
|
|
|
|
<?php
|
|
<?php
|
|
|
-// Handle test upload
|
|
|
|
|
-if (isset($_GET['action']) && $_GET['action'] === 'test' && $_SERVER['REQUEST_METHOD'] === 'POST') {
|
|
|
|
|
- header('Content-Type: application/json');
|
|
|
|
|
-
|
|
|
|
|
- $result = [
|
|
|
|
|
- 'success' => false,
|
|
|
|
|
- 'size' => 0,
|
|
|
|
|
- 'error' => 'No file uploaded',
|
|
|
|
|
- 'php_info' => [
|
|
|
|
|
- 'upload_max_filesize' => ini_get('upload_max_filesize'),
|
|
|
|
|
- 'post_max_size' => ini_get('post_max_size'),
|
|
|
|
|
- 'memory_limit' => ini_get('memory_limit')
|
|
|
|
|
- ],
|
|
|
|
|
- 'server_info' => [
|
|
|
|
|
- 'content_length' => $_SERVER['CONTENT_LENGTH'] ?? 0,
|
|
|
|
|
- 'content_type' => $_SERVER['CONTENT_TYPE'] ?? 'unknown'
|
|
|
|
|
- ]
|
|
|
|
|
- ];
|
|
|
|
|
-
|
|
|
|
|
- if (isset($_FILES['test_file'])) {
|
|
|
|
|
- $file = $_FILES['test_file'];
|
|
|
|
|
- $result['size'] = $file['size'];
|
|
|
|
|
- $result['original_name'] = $file['name'];
|
|
|
|
|
- $result['type'] = $file['type'];
|
|
|
|
|
- $result['error_code'] = $file['error'];
|
|
|
|
|
-
|
|
|
|
|
- if ($file['error'] === UPLOAD_ERR_OK) {
|
|
|
|
|
- $result['success'] = true;
|
|
|
|
|
- $result['message'] = 'Upload successful';
|
|
|
|
|
- } else {
|
|
|
|
|
- $result['error'] = getUploadErrorMessage($file['error']);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- echo json_encode($result);
|
|
|
|
|
- exit;
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
function return_bytes($val) {
|
|
function return_bytes($val) {
|
|
|
$val = trim($val);
|
|
$val = trim($val);
|
|
|
$last = strtolower($val[strlen($val)-1]);
|
|
$last = strtolower($val[strlen($val)-1]);
|