Hola! Pues mirando tu código no parece haber ningun error de sintaxis. Tu error debe estar en que no exista tu variable de session con la cual haces los condicionales y por ese motivo la variable $src no exista o este vacia (ningun valor designado). Otro motivo puede ser que la imagenes gif no existan o no esten en la ruta correcta, por el código deberia tener esas imagenes en el mismo directorio que el script php. Yo haria lo siguiente:
Cita:
<?php
if(isset($_SESSION['s_personaje'])){
switch($_SESSION['s_personaje']){
case 1: $src = imagecreatefromgif('1.gif');
break;
case 2: $src = imagecreatefromgif('2.gif');
break;
case 3: $src = imagecreatefromgif('3.gif');
break;
case 4: $src = imagecreatefromgif('4.gif');
break;
}
if($src){
$img = imagecreatetruecolor(200,200);
imagecopy($img, $src, 0, 0, 0, 0, 200, 200);
header('Content-Type: image/gif');
imagegif($img);
imagedestroy($img);
imagedestroy($src);
}
else { echo "La imagen no existe en la ruta especificada.";}
}
else { echo "Error: La variable de session no existe."; }
?>
Haciendo esto sabras donde esta tu problema, si es por la variable de session o porque la imagen no existe. Espero que te sirva de ayuda.
Un saludo