minimal_import_test.php 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. <?php
  2. // Minimal test to isolate exact hanging point in wordpress_import.php
  3. error_reporting(E_ALL);
  4. ini_set('display_errors', 1);
  5. ini_set('max_execution_time', 30);
  6. ini_set('memory_limit', '256M');
  7. echo "<h1>Minimal WordPress Import Test</h1>";
  8. echo "<p>Step 1: PHP working</p>";
  9. // Test 2: Basic includes without auth
  10. echo "<p>Step 2: Testing basic includes...</p>";
  11. try {
  12. require_once '../includes/config.php';
  13. echo "<p>✓ Config included</p>";
  14. } catch (Exception $e) {
  15. echo "<p>✗ Config error: " . $e->getMessage() . "</p>";
  16. exit;
  17. }
  18. try {
  19. require_once '../includes/database.php';
  20. echo "<p>✓ Database included</p>";
  21. } catch (Exception $e) {
  22. echo "<p>✗ Database error: " . $e->getMessage() . "</p>";
  23. exit;
  24. }
  25. // Test 3: Database connection
  26. echo "<p>Step 3: Testing database connection...</p>";
  27. try {
  28. $db = Database::getInstance();
  29. echo "<p>✓ Database instance created</p>";
  30. $result = $db->query("SELECT 1 as test");
  31. echo "<p>✓ Database query successful</p>";
  32. } catch (Exception $e) {
  33. echo "<p>✗ Database error: " . $e->getMessage() . "</p>";
  34. exit;
  35. }
  36. // Test 4: WordPress connection (same as main interface)
  37. echo "<p>Step 4: Testing WordPress connection...</p>";
  38. $wpConfig = [
  39. 'host' => '10.15.10.8',
  40. 'database' => 'valtsu_valtsu',
  41. 'username' => 'root',
  42. 'password' => 'jotainaivanmuuta'
  43. ];
  44. try {
  45. echo "<p>About to connect to WordPress...</p>";
  46. // Set timeout options
  47. $options = [
  48. PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
  49. PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
  50. PDO::ATTR_TIMEOUT => 10,
  51. PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8mb4"
  52. ];
  53. $dsn = "mysql:host={$wpConfig['host']};dbname={$wpConfig['database']};charset=utf8mb4";
  54. echo "<p>DSN: $dsn</p>";
  55. $wpDb = new PDO($dsn, $wpConfig['username'], $wpConfig['password'], $options);
  56. echo "<p>✓ WordPress PDO created</p>";
  57. // Test connection
  58. $wpDb->query("SELECT 1");
  59. echo "<p>✓ WordPress connection test successful</p>";
  60. // Get stats
  61. echo "<p>Getting stats...</p>";
  62. $stats = [];
  63. try {
  64. $stats['posts'] = $wpDb->query("SELECT COUNT(*) FROM wp_posts WHERE post_type = 'post'")->fetchColumn();
  65. echo "<p>✓ Posts count: {$stats['posts']}</p>";
  66. } catch (Exception $e) {
  67. echo "<p>⚠ Posts query failed: " . $e->getMessage() . "</p>";
  68. $stats['posts'] = 0;
  69. }
  70. try {
  71. $stats['categories'] = $wpDb->query("SELECT COUNT(*) FROM wp_term_taxonomy WHERE taxonomy = 'category'")->fetchColumn();
  72. echo "<p>✓ Categories count: {$stats['categories']}</p>";
  73. } catch (Exception $e) {
  74. echo "<p>⚠ Categories query failed: " . $e->getMessage() . "</p>";
  75. $stats['categories'] = 0;
  76. }
  77. try {
  78. $stats['users'] = $wpDb->query("SELECT COUNT(*) FROM wp_users")->fetchColumn();
  79. echo "<p>✓ Users count: {$stats['users']}</p>";
  80. } catch (Exception $e) {
  81. echo "<p>⚠ Users query failed: " . $e->getMessage() . "</p>";
  82. $stats['users'] = 0;
  83. }
  84. try {
  85. $stats['comments'] = $wpDb->query("SELECT COUNT(*) FROM wp_comments")->fetchColumn();
  86. echo "<p>✓ Comments count: {$stats['comments']}</p>";
  87. } catch (Exception $e) {
  88. echo "<p>⚠ Comments query failed: " . $e->getMessage() . "</p>";
  89. $stats['comments'] = 0;
  90. }
  91. echo "<h2>✓ All tests completed successfully!</h2>";
  92. echo "<p>Stats: " . print_r($stats, true) . "</p>";
  93. } catch (Exception $e) {
  94. echo "<p>✗ WordPress connection error: " . $e->getMessage() . "</p>";
  95. echo "<p>File: " . $e->getFile() . "</p>";
  96. echo "<p>Line: " . $e->getLine() . "</p>";
  97. exit;
  98. }
  99. echo "<h2>Test completed - WordPress connection works!</h2>";
  100. ?>