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

Форум PHP

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

 

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

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

тема: закачка файлов mp3 на сервер
 
 автор: buka   (19.12.2007 в 09:27)   письмо автору
 
 

Привет всем

Необходимо реализовать сабж.
Причем размер файла может быть и большим. Я как понимаю если делать это через форму то сервер зарубит
закачку по нехватке памяти или еще что. Вообщем как бы вы посоветовали реализовать данную задачу.

Заранее всем спасибо

   
 
 автор: cheops   (19.12.2007 в 12:06)   письмо автору
 
   для: buka   (19.12.2007 в 09:27)
 

Большой файл следует разбивать либо на части и собирать на сервере, либо загружать его по FTP.

   
 
 автор: buka   (23.12.2007 в 10:41)   письмо автору
 
   для: cheops   (19.12.2007 в 12:06)
 

А как разбить его тогда ? Можно пример ?

   
 
 автор: cheops   (23.12.2007 в 12:34)   письмо автору
 
   для: buka   (23.12.2007 в 10:41)
 

Вы сможете найти нужный вам срипт в теме по ссылке http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=827.

   
 
 автор: buka   (24.12.2007 в 08:04)   письмо автору
 
   для: cheops   (23.12.2007 в 12:34)
 

Ну в итоге я не смогу закачать целый файл на сервер ?

   
 
 автор: mihdan   (24.12.2007 в 10:48)   письмо автору
 
   для: buka   (24.12.2007 в 08:04)
 

Разбиваете файл на части, допустимого размера, закачиваете на сервер, на котором кладете скрипт, что будет собирать из кусочков файл. Вы плохо читали что вам Хеопс написал?

Разбить

<?php
  
// Имя файла
  
$filename "Site.rar";
  
// Разбиваем файл на куски по 10 000
  // За одно и запишем их в разные файлы
  
$piece 10000;
  
// Открываем исходный файл
  
$fp fopen($filename"r");
  
// Читаем содержимое файла в буфер
  
$bufer fread($fpfilesize($filename));
  
// Закрываем файл
  
fclose($fp);
  
// Подсчитываем число кусков, на которые
  // разобьётся файл
  
$count = (int)filesize($filename)/$piece;
  if((float)(
filesize($filename)/$piece) - $count != 0$count++;
  
// В цикле разбиваем содержимое файла в переменной
  // $bufer на части
  
for($i=0$i<$count; ++$i)
  {
    
$part substr($bufer,$i*$piece,$piece);
    
// Сохраняем кусок в файле
    
$fp fopen("Site.tm".$i,"w");
    
fwrite($fp,$part);
    
fclose($fp);
  }
?> 


Склеить

<?php
  $bufer 
"";
  for(
$i=0$i<100000; ++$i)
  {
    
$filename "Site.tm".$i;
    if(
file_exists($filename))
    {
      
$fp fopen($filename,"r");
      
$bufer .= fread($fp,filesize($filename));
      
fclose($fp);
    }
    else
    {
      
// Если файла с таким именем не
      // существует - выходим из цикла
      
break;
    }
    
// Склееные значения $bufer
    // помещаем в кончный файл
    
$fp fopen("Site_final.rar","w");
    
fwrite($fp,$bufer);
    
fclose($fp);
  }
?> 

   
 
 автор: sim5   (24.12.2007 в 11:28)   письмо автору
 
   для: mihdan   (24.12.2007 в 10:48)
 

Автор спрашивает видимо о файле, закачиваемом от клиента через форму, и первая часть кода "Разбить", уж никак не может разбить файл у клиента.

   
 
 автор: buka   (24.12.2007 в 18:31)   письмо автору
 
   для: sim5   (24.12.2007 в 11:28)
 

Ахтунг, наконец-то меня кто-то понял. Естессно вопрос стоит как быть в таком случае. То есть загрузка через форму больших файлов возможно ?

   
 
 автор: sim5   (24.12.2007 в 18:40)   письмо автору
 
   для: buka   (24.12.2007 в 18:31)
 

Через FTP видимо надо.

   
 
 автор: Unkind   (24.12.2007 в 18:41)   письмо автору
 
   для: sim5   (24.12.2007 в 18:40)
 

Поняли? Вас ахтунгом назвали.

   
 
 автор: sim5   (24.12.2007 в 18:52)   письмо автору
 
   для: Unkind   (24.12.2007 в 18:41)
 

Найн :)

   
 
 автор: Faraon   (24.12.2007 в 21:14)   письмо автору
 
   для: cheops   (19.12.2007 в 12:06)
 

Если сервер собственный, то можно изменить максимальный объем загружаемого файла в php.ini

   
 
 автор: `JUP`   (24.12.2007 в 21:20)   письмо автору
 
   для: Faraon   (24.12.2007 в 21:14)
 

Странно, что тема нашла раскрытие через добрый десяток постов =)

   
 
 автор: mihdan   (25.12.2007 в 10:41)   письмо автору
 
   для: `JUP`   (24.12.2007 в 21:20)
 

Нужно сразу указать свой сервер или бесплатный хостинг какой-нить - тогда ответили бы сразу ;)

   
 
 автор: buka   (25.12.2007 в 20:13)   письмо автору
 
   для: mihdan   (25.12.2007 в 10:41)
 

А другие варианты есть какие-нить, сервер свой. Просто кроме ftp и формы есть варианты юзабильной загрузки файла на сервер, кроме как через форму ?

   
 
 автор: Faraon   (25.12.2007 в 21:26)   письмо автору
 
   для: buka   (25.12.2007 в 20:13)
 

>юзабильной загрузки файла на сервер
Поясните, что это значит?

   
 
 автор: vitali   (26.12.2007 в 10:15)   письмо автору
 
   для: Faraon   (25.12.2007 в 21:26)
 

Файлы на свой сервер и любой сервер в Вашей сети можно загрузить (при наличии соответствующих полномочий и настроек серверов) по HTTP (т.е. через форму), FTP и используя протоколы Telnet, SSH.

   
Rambler's Top100
вверх

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