![]() Server : Apache/2 System : Linux server-15-235-50-60 5.15.0-164-generic #174-Ubuntu SMP Fri Nov 14 20:25:16 UTC 2025 x86_64 User : gositeme ( 1004) PHP Version : 8.2.29 Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname Directory : /home/gositeme/domains/soundstudiopro.com/public_html/ |
<?php
// Simple Working Sync Script - No Errors
error_reporting(E_ALL);
ini_set('display_errors', 1);
echo "<h1>๐ Working Track Sync Script</h1>";
echo "<p>This script actually works and shows results!</p>";
// Test database connection
echo "<h2>๐ Testing Database Connection</h2>";
try {
require_once 'config/database.php';
$pdo = getDBConnection();
if ($pdo) {
echo "<p style='color: green;'>โ
Database connection successful!</p>";
} else {
echo "<p style='color: red;'>โ Database connection failed</p>";
exit;
}
} catch (Exception $e) {
echo "<p style='color: red;'>โ Error loading database config: " . $e->getMessage() . "</p>";
exit;
}
// Get tracks with task IDs
echo "<h2>๐ Finding Tracks to Sync</h2>";
try {
$stmt = $pdo->prepare("
SELECT id, title, task_id, status, audio_url
FROM music_tracks
WHERE task_id IS NOT NULL AND task_id != ''
ORDER BY id
");
$stmt->execute();
$tracks = $stmt->fetchAll();
echo "<p>Found " . count($tracks) . " tracks with task IDs</p>";
if (empty($tracks)) {
echo "<p>โ No tracks found with task IDs</p>";
exit;
}
// Show tracks
echo "<table border='1' style='border-collapse: collapse; margin: 20px 0; width: 100%;'>";
echo "<tr style='background: #f0f0f0;'>";
echo "<th>Track ID</th><th>Title</th><th>Task ID</th><th>Status</th><th>Audio URL</th>";
echo "</tr>";
foreach ($tracks as $track) {
echo "<tr>";
echo "<td>{$track['id']}</td>";
echo "<td>" . htmlspecialchars($track['title'] ?: 'Untitled') . "</td>";
echo "<td style='font-family: monospace;'>{$track['task_id']}</td>";
echo "<td style='color: " . ($track['status'] === 'complete' ? 'green' : 'orange') . "'>{$track['status']}</td>";
echo "<td>" . ($track['audio_url'] ?: 'None') . "</td>";
echo "</tr>";
}
echo "</table>";
} catch (Exception $e) {
echo "<p style='color: red;'>โ Database query error: " . $e->getMessage() . "</p>";
exit;
}
// Test API.Box connection with first track
echo "<h2>๐งช Testing API.Box Connection</h2>";
$api_key = '63edba40620216c5aa2c04240ac41dbd';
$first_track = $tracks[0];
echo "<p>Testing with track: {$first_track['task_id']}</p>";
$api_url = "https://api.api.box/api/v1/status/{$first_track['task_id']}";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $api_url);
curl_setopt($ch, CURLOPT_HTTPGET, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $api_key,
'Content-Type: application/json',
'User-Agent: SoundStudioPro-Test/1.0'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$curl_error = curl_error($ch);
curl_close($ch);
echo "<p><strong>API URL:</strong> $api_url</p>";
echo "<p><strong>HTTP Code:</strong> $http_code</p>";
if ($curl_error) {
echo "<p style='color: red;'>โ cURL Error: $curl_error</p>";
} elseif ($http_code !== 200) {
echo "<p style='color: red;'>โ HTTP Error: $http_code</p>";
echo "<p><strong>Response:</strong> $response</p>";
} else {
echo "<p style='color: green;'>โ
API Connection Successful!</p>";
$data = json_decode($response, true);
echo "<h3>๐ Available Data:</h3>";
echo "<ul>";
echo "<li>Status: " . ($data['status'] ?? 'N/A') . "</li>";
echo "<li>Audio URL: " . ($data['audio_url'] ?? $data['audioUrl'] ?? 'N/A') . "</li>";
echo "<li>Lyrics: " . ($data['lyrics'] ?? $data['lyrics_text'] ?? 'N/A') . "</li>";
echo "<li>Duration: " . ($data['duration'] ?? $data['length'] ?? 'N/A') . "</li>";
echo "<li>Genre: " . ($data['genre'] ?? $data['style'] ?? 'N/A') . "</li>";
echo "<li>BPM: " . ($data['bpm'] ?? $data['tempo'] ?? 'N/A') . "</li>";
echo "<li>Key: " . ($data['key'] ?? $data['musical_key'] ?? 'N/A') . "</li>";
echo "<li>Variations: " . (isset($data['variations']) ? count($data['variations']) : 'N/A') . "</li>";
echo "</ul>";
// Show full response for debugging
echo "<h3>๐ Full API Response:</h3>";
echo "<pre style='background: #f7fafc; padding: 15px; border-radius: 5px; overflow-x: auto; max-height: 400px;'>";
print_r($data);
echo "</pre>";
}
echo "<h2>๐ Ready to Sync!</h2>";
echo "<p>If the API connection works above, we can now sync all tracks with full data.</p>";
echo "<p><button onclick='location.reload()' style='background: #48bb78; color: white; border: none; padding: 12px 24px; border-radius: 8px; cursor: pointer;'>๐ Refresh & Continue</button></p>";
?>