PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!
<!-- The data encoding type, enctype, MUST be specified as below -->
<form enctype="multipart/form-data" action="upload_file_script.php" 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
// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead
// of $_FILES.
$uploaddir = '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>";
?>
I changed $uploaddir to uploads (which is a folder i have on the server in the same directory as the form and script). but i keep getting a parse error. Anyone know what's up?
Do you have a hex editor handy? If not, get one. Once you have one, open the file so you can look at the binary data. Look at the code in the editor. Make sure there isn't any odd unprintable characters floating on that line. Check just after and just before the line as well.
k, re-typed it from scratch now im getting an error echoed at least:
Possible file upload attack!
Here is some more debugging info:Array
(
[userfile] => Array
(
[name] => american flag.jpg
[type] =>
[tmp_name] =>
[error] => 2
[size] => 0
)
)
and thisi is php version 4.4.1
Could it be something with the directory? I have proper permissions.
Can anyone see if this works for them?