if (isset($_FILES[$fieldname])) {
$file=$_FILES[$fieldname];
if(is_writeable($destination_dir) &&
move_uploaded_file($file['tmp_name'], $destination_dir.$file['name'])) {
header('Location: '.$_SERVER['PHP_SELF'].'?OK');
exit;
}
else {
// Error Description
$file['error'] == 4 && $err[] = "File wasn't uploaded yet";
$file['error'] && $err[] = 'There was error while uploading file';
$file['size'] == 0 && $err[] = 'File is empty';
$file['size']>$max_size &&
$err[] = sprintf('File size %uK. But max %uK',$file['size']/1024, $max_size/1024);
isset($err) || $err[] = "Unknown Error";
}
}//if
if (isset($err)) echo '<b>Error:</b><br>'.implode('<br>',$err); ?>
/* image check begin. Can be removed */
} elseif ($err.= check_image($file['tmp_name'],$max_image_width,$max_image_height)) {
/* image check end */
+1Или, все же, более-менее читабельный код, на примере которого можно самому научиться обрабатывать аплоады?
Это, извините - пустословие.более-менее читабельный код
Как пример "сложного" варианта вполне подойдет твой.Автор оригинала: Фанат
эх.
так что решим, отцы?
следуя моему любимому принципу "не делить и отнимать" - фиксер, а почему бы не сделать оба варианта?
не хочешь попробовать изобразить?
<?
define(DESTINATION_DIR, 'c:/');
if (isset($_FILES['userfile'])) {
if ($_FILES['userfile']['error'] || $_FILES['userfile']['size']==0) {
$err = 'An error has occurred during upload';
} elseif (!move_uploaded_file($_FILES['userfile']['tmp_name'], DESTINATION_DIR.$_FILES['userfile']['name'])) {
$err = 'An error has occurred while saving the uploaded file on server';
} else {
header('Location: '.$_SERVER['PHP_SELF'].'?OK');
exit;
}
echo "<font color=red>" . $err . "</font><br>\n";
} elseif ($_SERVER['QUERY_STRING']=='OK') {
echo "The upload completed succesfully<br>\n";
}
?>
<form method="post" enctype="multipart/form-data">
File to upload: <input name="userfile" type="file"><br>
<input type="submit" value="Upload File">
</form>