Saludos
El inconveniente se encuentra en el ciclo for.
Prueba modificando esta sección del código:
Código PHP:
Ver original<?php
$categorias = $fila["categoria"];
$sql2 = "SELECT *
FROM categorias WHERE categoria IN ($categorias)
ORDER BY id DESC";
echo '<select name="cat[]" size="3" multiple>';
echo "<option value=\"" . $fila2["id"] . "\"selected>" . $fila2["cas"] . "</option>";
};
echo '</select>';
?>
Utiliza array_search para reemplazar esta validación que tenias
Código PHP:
Ver originalif ($separar[$i] == $fila2["id"]) {
echo "<option value=\"" . $fila2["id"] . "\"selected>" . $fila2["cas"] . "</option>";
} else {
echo "<option value=\"" . $fila2["id"] . "\">" . $fila2["cas"] . "</option>";
}