Просмотр файла upload/index.php

Размер файла: 2.85Kb
<?php
include_once 'head.php';
include_once 'config.php';
switch($_GET['act']) {
case 'upload':
if($_FILES) {
for($i = 0; $i < $fields; $i++) {
  if($_FILES['uploadfile']['name'][$i]) {
	$filename = $_FILES['uploadfile']['name'][$i];
    if($_POST['file'][$i]) {
		$file_ext = pathinfo($filename, PATHINFO_EXTENSION);
	    $rename = strip_tags($_POST['file'][$i]). '.' .$file_ext;
		$filename = $rename;
    }
    $filesize = $_FILES['uploadfile']['size'][$i];
    $uploadfile = $uploaddir.$filename;
    foreach($ext as $key => $value) {
       if(preg_match('/^[a-z0-9_\.\!\?\(\)\<\>\[\]-]+\.' .$value. '$/', $filename)) {
		   $err[] = "Ошибка! Формат файла $value запрещен для загрузки на сервер";
	   }
	   
    }
	if(!preg_match('/^[a-z0-9_\.\!\?\#\*\(\)\[\]\@\$\%\&\+\=-]+$/i', $filename)) {
	    $err[] = 'Имя файла может содержать только латинские буквы, цифры, и знаки _.!?#*()[]@$%&+=-';
		continue;
	}
		
	if($filename == '.htaccess')
	    $err[] = 'Ошибка! Файл .htaccess запрещено загружать'; 
	if(file_exists($uploadfile)) {
		$err[] = "Ошибка! Файл $filename не загружен так как файл с таким именем уже есть";
			}
		if($err) {
           foreach($err as $key => $value) {
	           $key = $key + 1;
	           echo '<font color="red"><b>' .$key. ' - ' .$value. '</b></font><br>';
           }
		   unset($err);
        }
	else {
    if($filesize < 1024) {
      $filesize .= ' Б';
    }
    elseif($filesize > 1024 && $filesize < 1024 * 1024) {
      $filesize /= 1024;
      $size = ceil($filesize). ' КБ';
    }
    elseif($filesize > 1024 * 1024) {
      $filesize /= 1024*1024;
      $size = ceil($filesize). ' МБ';
    }
	// Копируем файл из временной папки в наш каталог
    if (copy($_FILES['uploadfile']['tmp_name'][$i], $uploadfile)) {
      echo '<font color="#66FF00"><b>Файл ' .$filename. ' успешно загружен на сервер</b><br><span style=\"margin-left: 30px;\">Размер: ' .$size. ' <br>Посмотреть его можно <a href="files/' .$filename. '">Здесь</a></font><br>';
    }
    else { echo "<h3>Ошибка! Не удалось загрузить файл $_FILES[uploadfile][name][$i] на сервер!</h3>"; }
	}
 }
}
}
default:
echo '<br><form action="?act=upload" method="post" enctype="multipart/form-data">
 Выберите файлы:<br>';
 for($i = 0; $i < $fields; $i++) { 
 echo '<input name="uploadfile[]" type="file"><br>
 Имя файла: <input type="text" name="file[]"><br>';
 }
 echo ' <input type="submit" value="Загрузить"></form>';
}

?>
</div>
<div id="foot">Made by Likesoft &copy; 2013</div>
</body>
</html>