Minimal WordPress Connection Test"; echo "

PHP Memory: " . ini_get('memory_limit') . "

"; echo "

Max Execution: " . ini_get('max_execution_time') . "s

"; echo "

Current Time: " . date('H:i:s') . "

"; if ($_SERVER['REQUEST_METHOD'] === 'POST') { echo "

Testing Step by Step...

"; try { echo "

Step 1: Creating DSN...

"; $host = trim($_POST['wp_host'] ?? 'localhost'); $database = trim($_POST['wp_database'] ?? 'wordpress'); $username = trim($_POST['wp_username'] ?? 'root'); $password = $_POST['wp_password'] ?? ''; echo "

Host: $host

"; echo "

Database: $database

"; $dsn = "mysql:host=$host;dbname=$database;charset=utf8mb4"; echo "

DSN: $dsn

"; echo "

Step 2: Creating PDO object...

"; $pdo = new PDO($dsn, $username, $password, [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_TIMEOUT => 5, PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8mb4" ]); echo "

✓ PDO created successfully

"; echo "

Step 3: Testing simple query...

"; $result = $pdo->query("SELECT 1 as test"); echo "

✓ Simple query successful

"; echo "

Step 4: Testing WordPress table check...

"; $tables = $pdo->query("SHOW TABLES LIKE 'wp_%'"); echo "

Found " . $tables->rowCount() . " WordPress tables

"; echo "

Step 5: Testing COUNT query...

"; $count = $pdo->query("SELECT COUNT(*) FROM wp_posts")->fetchColumn(); echo "

✓ Posts count: $count

"; echo "

ALL TESTS PASSED!

"; } catch (Exception $e) { echo "

ERROR: " . htmlspecialchars($e->getMessage()) . "

"; echo "

File: " . $e->getFile() . "

"; echo "

Line: " . $e->getLine() . "

"; } } else { ?>

Test WordPress Connection