PHP mail forms do not require MySQL (unless it is web-based email, like Hotmail). MySQL is a database, which is for storing information, like this message board does (all the names, posts, topic names, etc are in a database).
If I wasn't so busy, I could throw a PHP script together, but you might try browsing here, for starters. Maybe someone here knows a direct script.
(PHP)
http://php.resourceindex.com
(CGI/Perl)
http://cgi.resourceindex.com
(MISC.)
http://www.hotscripts.com
Those are all complete scripts sites. Anywhere else I know of would be more of a teaching site, and it sounds like you're just looking for a premade script.
The PNG/GIF/JPG question is hard answered one, because all can be saved in varying degrees. If you'd really like to learn about it, I'd try a
Google search in all seriousness. For web, I'd stick with jpg or gif, since png is not completely supported yet. For attachments, most mail servers allow about 1 MB for an attachment, and most people save PNG files out really large. Although I've seen PNG's smaller than JPG's.