Здравствуйте!
Есть папка на сервере с правами 777
Папка доступна пользователям для просмотра, то есть, находится она внутри каталога сайта, а не выше него.
Может ли кто-нибудь загрузить в нее файл, не используя интерфейс сайта?
вопрос 2.
Будьте добры, укажите на ошибки в коде (в плане безопасности)
PHP:
скопировать код в буфер обмена
<?PHP function upload_img(){ if( filesize($_FILES['img']['tmp_name']) > 204800 ) exit("Error! Size more than 200KB!"); //если размер больше 200кб, выдаем ошибку $uploadfile = $_SERVER['DOCUMENT_ROOT'].'/img/'; //каталог для загрузки файлов if (preg_match('#\.(jpeg|jpg|gif|png)$#iUs', $_FILES['img']['name'], $out) && // проверяем расширение и запоминаем его //перемещаем загруженный файл. имя генерируем с помощью md5, в конец подставляем найденное ранее расширение return $name; //если все ок, возвращаем имя файла после загрузки } else exit("Error uploading"); } if( !empty($_FILES['img']) ){ $img = upload_img(); echo 'Загрузили файл '.$img.' <br>'; } ?> <form action="index.php" method="post" enctype="multipart/form-data"> <p>Картинка: (max: 200KB) <input type="file" name="img" ></p> <input type="submit" value="Add"> </form>
Так же в папке img находится файл .htaccess
CODE ( htmlphp):
скопировать код в буфер обмена
php_flag engine 0 AddType "text/html" .php .cgi .pl .fcgi .fpl .phtml .shtml .php2 .php3 .php4 .php5 .asp .jsp
(Отредактировано автором: 30 Мая, 2013 - 11:43:05)
|