Vale, la función es imagecreatefrom y no createimagefrom XD
Lo he dejado algo así:
Código PHP:
$parts=explode(".",$ruta);
$ext=$parts[count($parts)-1]; // Coge la extensión
$func = "imagecreatefrom" . $ext;
$fuente = @$func($ruta);
$imgAncho = imagesx ($fuente);
$imgAlto = imagesy($fuente);
$imagen = @imagecreate(200, 150); //X e Y
ImageCopyResized($imagen,$fuente,0,0,0,0,200,150,$imgAncho,$imgAlto); //Crea el thumbnails
$func2 = "image" . $ext;
Header("Content-type: image/" . $ext);
$nuevo = time().".jpg"; //Le doy al archivo como nombre la hora
$func2($imagen, $nuevo); //Guarda el archivo
Ahora el problema es con los archivos JPG. Porque como ya habéis dicho antes, la extensión es JPEG y no JPG y por tanto no puede hacer un thumbnail de los archivos .jpg, solo .jpeg ... Y con .bmp ocurre lo mismo, ya que es wbmp ¿A alguien se le ocurre algo?