exec(' BEGIN; UPDATE pictures SET format = \'JPEG\' WHERE format = '.IMAGETYPE_JPEG.'; UPDATE pictures SET format = \'PNG\' WHERE format = '.IMAGETYPE_PNG.'; UPDATE pictures SET format = \'GIF\' WHERE format = '.IMAGETYPE_GIF.'; UPDATE pictures SET format = \'JPEG\' WHERE format = \'jpg\'; UPDATE pictures SET format = \'GIF\' WHERE format = \'gif\'; UPDATE pictures SET format = \'PNG\' WHERE format = \'png\'; ALTER TABLE pictures ADD COLUMN size INT NOT NULL DEFAULT 0;'); function renameOldFiles($path = 'i') { global $db; $dir = dir($path); while ($file = $dir->read()) { if ($file[0] == '.') continue; if (is_dir($path . '/' . $file)) renameOldFiles($path . '/' . $file); else { if (substr($file, -4) == '.jpg') rename($path . '/' . $file, $path . '/' . str_replace('.jpg', '.jpeg', $file)); if (!preg_match('/.*\.s\..*$/', $file)) { $size = filesize($path . '/' . $file); $hash = basename($path) . '/' . preg_replace('!\.[^s].*$!', '', basename($file)); echo "$hash = $file = $size\n"; $db->exec('UPDATE pictures SET size = '.(int)$size.' WHERE hash = \''.$db->escapeString($hash).'\';'); } } } $dir->close(); } renameOldFiles(); $db->exec('END;'); echo "OK\n"; ?>