Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: загрузка файлов
 
 автор: Druid   (02.10.2008 в 23:36)   письмо автору
 
 


Код формы (upload.html)

<html>
<head>
  <title>Загрузка файлов на сервер</title>
</head>
<body>
      <h2><p><b> Форма для загрузки файлов </b></p></h2>
      <form action="upload.php" method="post" enctype="multipart/form-data">
      <input type="file" name="filename"><br> 
      <input type="submit" value="Загрузить"><br>
      </form>
</body>
</html>

Код скрипта обработки формы (upload.php)

<html>
<head>
  <title>Результат загрузки файла</title>
</head>
<body>
<?php
   
if($_FILES["filename"]["size"] > 1024*3*1024)
   {
     echo (
"Размер файла превышает три мегабайта");
     exit;
   }
   if(
copy($_FILES["filename"]["tmp_name"],
     
"c:/temp/".$_FILES["filename"]["name"]))
   {
     echo(
"Файл успешно загружен <br>");
     echo(
"Характеристики файла: <br>");
     echo(
"Имя файла: ");
     echo(
$_FILES["filename"]["name"]);
     echo(
"<br>Размер файла: ");
     echo(
$_FILES["filename"]["size"]);
     echo(
"<br>Каталог для загрузки: ");
     echo(
$_FILES["filename"]["tmp_name"]);
     echo(
"<br>Тип файла: ");
     echo(
$_FILES["filename"]["type"]);
   } else {
      echo(
"Ошибка загрузки файла");
   }
?>

</body>
</html>



Ну вот файлы типерь загружаются, тот тeпери проблемка безопастносити...
Как сделать чтоб файли с разшырением .php .xtml ....... переименовались в txt хотяб?

  Ответить  
 
 автор: gurza   (03.10.2008 в 03:44)   письмо автору
 
   для: Druid   (02.10.2008 в 23:36)
 

можно так

function getFileExtension($str) {

        $i = strrpos($str,".");
        if (!$i) { return ""; }

        $l = strlen($str) - $i;
        $ext = substr($str,$i+1,$l);

        return $ext;

    }

$file_name = $_FILES['filename']['name'];
$pext = getFileExtension($file_name);
$pext = strtolower($pext);
if($pext == "php"){
    $final_filename.="File";
    for ($i=0; $i<8; $i++){
    $final_filename.=mt_rand(0,8);
    }
    $File = $final_filename.".txt";
    $file_name= strtolower($File);
    

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования