EDU 인덱스 영상 로딩 진단'; echo ''; // 1. 테이블 목록 확인 echo '

1. 관련 테이블 존재 여부

'; $tables = $pdo->query("SHOW TABLES")->fetchAll(PDO::FETCH_COLUMN); $checkTables = ['edu_contents','edu_content_keywords','edu_keywords','edu_users','edu_user_keywords','edu_codes']; echo ''; foreach ($checkTables as $tbl) { $exists = in_array($tbl, $tables); $count = 0; if ($exists) { $count = $pdo->query("SELECT COUNT(*) FROM `$tbl`")->fetchColumn(); } $cls = $exists ? 'ok' : 'err'; echo ""; } echo '
테이블명존재레코드 수
$tbl" . ($exists ? '✔' : '✘ 없음') . "$count
'; // 2. edu_contents 컬럼 구조 echo '

2. edu_contents 컬럼 구조

'; if (in_array('edu_contents', $tables)) { $cols = $pdo->query("SHOW COLUMNS FROM edu_contents")->fetchAll(); echo ''; foreach ($cols as $c) { echo ""; } echo '
FieldTypeNullKeyDefault
{$c['Field']}{$c['Type']}{$c['Null']}{$c['Key']}{$c['Default']}
'; // 샘플 데이터 3건 echo '

2-1. edu_contents 샘플 (최대 5건)

'; $rows = $pdo->query("SELECT * FROM edu_contents LIMIT 5")->fetchAll(); if ($rows) { $keys = array_keys($rows[0]); echo '' . implode('', array_map(fn($k) => "", $keys)) . ''; foreach ($rows as $r) { echo '' . implode('', array_map(fn($v) => '', $r)) . ''; } echo '
$k
' . htmlspecialchars((string)$v) . '
'; } else { echo '

⚠ edu_contents 에 데이터가 없습니다 (DB 초기화됨)

'; } } else { echo '

edu_contents 테이블이 존재하지 않습니다.

'; } // 3. edu_content_keywords 구조 & 샘플 echo '

3. edu_content_keywords (키워드-콘텐츠 매핑)

'; if (in_array('edu_content_keywords', $tables)) { $cols = $pdo->query("SHOW COLUMNS FROM edu_content_keywords")->fetchAll(); echo ''; foreach ($cols as $c) { echo ""; } echo '
FieldType
{$c['Field']}{$c['Type']}
'; $rows = $pdo->query("SELECT * FROM edu_content_keywords LIMIT 5")->fetchAll(); if ($rows) { $keys = array_keys($rows[0]); echo '' . implode('', array_map(fn($k) => "", $keys)) . ''; foreach ($rows as $r) { echo '' . implode('', array_map(fn($v) => '', $r)) . ''; } echo '
$k
' . htmlspecialchars((string)$v) . '
'; } else { echo '

edu_content_keywords 에 데이터가 없습니다.

'; } } else { echo '

edu_content_keywords 테이블이 없습니다.

'; } // 4. edu_keywords 구조 & 샘플 echo '

4. edu_keywords

'; if (in_array('edu_keywords', $tables)) { $rows = $pdo->query("SELECT * FROM edu_keywords LIMIT 10")->fetchAll(); if ($rows) { $keys = array_keys($rows[0]); echo '' . implode('', array_map(fn($k) => "", $keys)) . ''; foreach ($rows as $r) { echo '' . implode('', array_map(fn($v) => '', $r)) . ''; } echo '
$k
' . htmlspecialchars((string)$v) . '
'; } else { echo '

edu_keywords 에 데이터가 없습니다.

'; } } else { echo '

edu_keywords 테이블이 없습니다.

'; } // 5. edu_user_keywords (유저-키워드 연결) echo '

5. edu_user_keywords

'; if (in_array('edu_user_keywords', $tables)) { $cols = $pdo->query("SHOW COLUMNS FROM edu_user_keywords")->fetchAll(); echo ''; foreach ($cols as $c) { echo ""; } echo '
FieldType
{$c['Field']}{$c['Type']}
'; $rows = $pdo->query("SELECT * FROM edu_user_keywords LIMIT 10")->fetchAll(); if ($rows) { $keys = array_keys($rows[0]); echo '' . implode('', array_map(fn($k) => "", $keys)) . ''; foreach ($rows as $r) { echo '' . implode('', array_map(fn($v) => '', $r)) . ''; } echo '
$k
' . htmlspecialchars((string)$v) . '
'; } else { echo '

edu_user_keywords 에 데이터가 없습니다.

'; } } else { echo '

edu_user_keywords 테이블이 없습니다.

'; } // 6. 전체 테이블 목록 echo '

6. DB 전체 테이블 목록 (' . count($tables) . '개)

'; echo '';