class.upload.php is a powerful and mature PHP class to manage uploaded files, and manipulate images in many ways. The script is available under a GPL license.
The /tmp directory is set in your php.ini. If you don't have a tmp directory, then you won't be able to upload at all.
The class doesn't try to create the temporary directory. It merely uses it. PHP, for security reason, uploads the file itself into this temp directory, from which is is available to the class (is_uploaded_file() and move_uploaded_file())
I would recommend checking if a simple bit of upload code works, so to make sure that your hosting allows uploads. You can find such code there: http://www.php.net/features.file-uploadReply
The class doesn't try to create the temporary directory. It merely uses it. PHP, for security reason, uploads the file itself into this temp directory, from which is is available to the class (is_uploaded_file() and move_uploaded_file())
I would recommend checking if a simple bit of upload code works, so to make sure that your hosting allows uploads. You can find such code there: http://www.php.net/features.file-upload