Le varie funzioni imagecopyresampled, imagejpeg etc restituiscono un valore, che può venire studiato per capire cosa non ha funzionato.
Usa questa caratteristica nei tuoi script per avere maggiore controllo degli errori.
...a meno che il problema non sia nel codice che hai omesso, che magari setta new_width a zero...