MySQL выдает ошибку, как исправить?
Самое первое -  mysql_query устаревший драйвер. Не используется с 7 и деприкэйтед в 5.х. 
Второе, что собственно вызывает ошибку, $query = mysql_query("UPDATE `catch` SET `hide` = '1' WHERE `id` = '$id'");
$res = mysql_query($query) or die (mysql_error()); сначала получаете селект, потом от него снова делаете запрос???
и третье - у вас там ид непонятно есть ли вообще, и кроме того, если в бд поле интежер, кавычки не нужны, то же относится к hide.$query ="
UPDATE `catch` 
SET `hide` = '1' 
WHERE `id` = '$id'";
var_dump($query);
$res = mysql_query($query) or die (mysql_error());
Попробуйте так$query = mysql_query("UPDATE `catch` SET `hide` = '1' WHERE `id` = {$id}");