Come ti ha già segnalato telegio, stai sovrascrivendo le variabili e non solo...
Un codice di questo tipo:
Codice PHP:
$img = @imagecreatefromjpeg( "{$pathToImages}{$fname}" );
$img = @imagecreatefromgif( "{$pathToImages}{$fname}" );
$img = @imagecreatefrompng( "{$pathToImages}{$fname}" );
...
imagejpeg( $tmp_img, "{$pathToThumbs}{$fname}" );
imagegif( $tmp_img, "{$pathToThumbs}{$fname}" );
imagepng( $tmp_img, "{$pathToThumbs}{$fname}" );
non ha alcun senso...
Fai un controllo sul mime type del file immagine, ed esegui, di volta in volta, solo le funzioni della gdlibrary corrispondenti al quel tipo di immagine.