OK, this is so weird. I'm following the file upload tutorial here: http://us3.php.net/features.file-upload
I have an html page with the form they suggest and then the php example file they suggest running on my server.
The upload mechanism works for all files under around 3 mb, but fails for files larger than that, even though I'm setting MAX_FILE_SIZE to a huge integer. Does anyone know why it's not working for larger files?
Also, I often have to send the upload request twice before the smaller files are uploaded. Any idea why?
Thanks very very much.
For quick reference:
html form code:
<!-- The data encoding type, enctype, MUST be specified as below -->
<form enctype="multipart/form-data" action="__URL__" method="POST">
<!-- MAX_FILE_SIZE must precede the file input field -->
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
<!-- Name of input element determines name in $_FILES array -->
Send this file: <input name="userfile" type="file" />
<input type="submit" value="Send File" />
</form>
php upload code:
<?php
// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead
// of $_FILES.
$uploaddir = '/var/www/uploads/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
echo '<pre>';
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
echo "File is valid, and was successfully uploaded.\n";
} else {
echo "Possible file upload attack!\n";
}
echo 'Here is some more debugging info:';
print_r($_FILES);
print "</pre>";
?>