It is a two step process... The first is an HTML File that has a browse button on it... The HTML looks something like the following.
<FORM ENCTYPE="multipart/form-data" ACTION="upload.php" METHOD="post">
<INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="65536">
<INPUT NAME="UploadedFile" TYPE="file">
<INPUT TYPE="submit" VALUE="Upload"></FORM>
Then the PHP file to parse the upload looks like...
$filename = $UploadedFile_name;
$dest = "/home/..." . $filename;
copy($UploadedFile, $dest);
Of course you'll have to make an entry into your database so that you can actually keep track of the uploaded file, and make sure that the web user/group has permission to create files in the directory, and then you are all set. The orginial file is uploaded to /tmp.
-Steven