Ver código fonte

Fixed upload test

svalavuo 1 mês atrás
pai
commit
c72a7f1fc4
1 arquivos alterados com 52 adições e 39 exclusões
  1. 52 39
      admin/upload_diagnostic.php

+ 52 - 39
admin/upload_diagnostic.php

@@ -4,7 +4,58 @@
  * 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) {
     session_start();
 }
@@ -196,44 +247,6 @@ server {
 </html>
 
 <?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) {
     $val = trim($val);
     $last = strtolower($val[strlen($val)-1]);