I am creating an image via a php script using imagepng. This works fine and displays well on the website. even saving-as gives me a valid .png file
header( \
Are you sure the relative path is correct? That can be a bit confusing if that script is called from another script.
You could try to change the path to:
$save = $_SERVER['DOCUMENT_ROOT'] . "/sigs/" . strtolower($name) . ".png";
Edit: And of course check the return value of imagepng() and your error log