![]() 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/.cursor-server/data/User/History/6dcc9068/ |
<?php
/**
* Migration: Convert all track titles AND artist names to UPPERCASE
*
* Run this once to update all existing data to ALL CAPS
*/
require_once __DIR__ . '/../config/database.php';
$pdo = getDBConnection();
if (!$pdo) {
die("Database connection failed.");
}
echo "<h2>Uppercase Migration - Tracks & Artists</h2>";
echo "<pre>";
try {
// ============================================
// PART 1: Update Track Titles
// ============================================
echo "=== TRACK TITLES ===\n\n";
$stmt = $pdo->query("SELECT id, title FROM music_tracks");
$tracks = $stmt->fetchAll(PDO::FETCH_ASSOC);
$totalTracks = count($tracks);
$updatedTracks = 0;
$skippedTracks = 0;
echo "Found {$totalTracks} tracks to process...\n\n";
$updateStmt = $pdo->prepare("UPDATE music_tracks SET title = ? WHERE id = ?");
foreach ($tracks as $track) {
$oldTitle = $track['title'];
$newTitle = mb_strtoupper($oldTitle, 'UTF-8');
if ($oldTitle !== $newTitle) {
$updateStmt->execute([$newTitle, $track['id']]);
echo "✅ Track [{$track['id']}] \"{$oldTitle}\" → \"{$newTitle}\"\n";
$updatedTracks++;
} else {
$skippedTracks++;
}
}
echo "\n";
// ============================================
// PART 2: Update Artist Names
// ============================================
echo "=== ARTIST NAMES ===\n\n";
$stmt = $pdo->query("SELECT id, name FROM users WHERE name IS NOT NULL AND name != ''");
$users = $stmt->fetchAll(PDO::FETCH_ASSOC);
$totalUsers = count($users);
$updatedUsers = 0;
$skippedUsers = 0;
echo "Found {$totalUsers} artists to process...\n\n";
$updateStmt = $pdo->prepare("UPDATE users SET name = ? WHERE id = ?");
foreach ($users as $user) {
$oldName = $user['name'];
$newName = mb_strtoupper($oldName, 'UTF-8');
if ($oldName !== $newName) {
$updateStmt->execute([$newName, $user['id']]);
echo "✅ Artist [{$user['id']}] \"{$oldName}\" → \"{$newName}\"\n";
$updatedUsers++;
} else {
$skippedUsers++;
}
}
// ============================================
// Summary
// ============================================
echo "\n" . str_repeat("=", 50) . "\n";
echo "✅ MIGRATION COMPLETE!\n\n";
echo "TRACKS:\n";
echo " - Total: {$totalTracks}\n";
echo " - Updated: {$updatedTracks}\n";
echo " - Already uppercase: {$skippedTracks}\n\n";
echo "ARTISTS:\n";
echo " - Total: {$totalUsers}\n";
echo " - Updated: {$updatedUsers}\n";
echo " - Already uppercase: {$skippedUsers}\n";
} catch (Exception $e) {
echo "❌ Error: " . $e->getMessage() . "\n";
error_log("Uppercase migration error: " . $e->getMessage());
}
echo "</pre>";
?>