Вход Регистрация
Файл: template/get.php
Строк: 33
<?
ignore_user_abort
(TRUE); 
set_time_limit(300);

$song = isset($_GET['song']) ? intval($_GET['song']) : 0;
define ('DATA_FILE','../music/'.$song.'.dat');

if (!
file_exists(DATA_FILE)) die(); // нет файла-нечегоделлать!


function ____copy($file,$max_length 0// функция копирования файла с ограничением длины
 
{
 
$a_data=unserialize(file_get_contents(DATA_FILE));  

 
ini_set('default_socket_timeout'60); // ждем соединения до 60 секунд
 
ini_set('user_agent''android');
 
 
$fp fopen($a_data['url'],"rb"); 
 if (
$fp )
  {  
  
$a_header stream_get_meta_data($fp); // получили заголовки

  
foreach($a_header["wrapper_data"] as $v)
   if (
stristr($v,"content-length"))
    {
    
$v explode(":",$v);
    
$a_data['size'] = intval(trim($v[1])); // размер файла
    
if ($a_data['size'] > 0)
     {
     
file_put_contents(DATA_FILE,serialize($a_data)); // сохраним размер    
     
break;
     }
    }
  
$fs fopen($file,"wb"); // открываем файл на запись
  
if ($fs)
   {
   
$a_data['status'] = 2;   // load  
   
$cur_size=0;   
   while((
$bin fread($fp1024)) != FALSE)
    {
    
$cur_size+=1024;
    if (
$max_length  && $cur_size $max_length// превысили разрешенный размер
     
{
     
$a_data['status'] = -2;     
     break;     
     }
     
fwrite($fs,$bin);
    }  
   
fclose($fs); 
   } else  
$a_data['status'] = -1// error 
  
fclose($fp); 
  } else  
$a_data['status'] = -1// error   

 
file_put_contents(DATA_FILE,serialize($a_data));
 }


 
  
 
____copy('../music/'.$song.'.mp3',15000000); // Ограничение 15 Мб. (0 - без ограничений)
 
 
?>
Онлайн: 0
Реклама