Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Размер файла, что лежит на удаленном сервере 
:(
    Опции темы
PROme
Дата 5.5.2005, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 346
Регистрация: 23.7.2003
Где: Kiev

Репутация: -1
Всего: 1



как узнать сабж?
к примеру, со своего хоста узнать размер файла http://forum.vingrad.ru/file.dat
желательно, без его скачки smile


--------------------
SEO-мастер
PM MAIL WWW   Вверх
dimes
Дата 5.5.2005, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 249
Регистрация: 20.7.2004
Где: то около СПБ

Репутация: 2
Всего: 14



Код

<?php
 $fp = fsockopen ('img171.exs.cx', 80, $_errno, $_errstr, 30);
 if (!$fp) print $_errstr;

 $_out="";
 $_body=0;

 fputs ($fp, "HEAD /img171/4954/eenden6tp.jpg HTTP/1.0\r\n");
 fputs ($fp, "Host: img171.exs.cx\r\n");
 fputs ($fp, "Connection: close\r\n");
 fputs ($fp, "Accept: */*\r\n");
 fputs ($fp, "\r\n");
 
 while (!feof($fp)) {
  $_row = fgets ($fp);
  print $_row;
 }
 fclose ($fp);
 
?>


вернет

HTTP/1.1 200 OK
Date: Thu, 05 May 2005 12:48:59 GMT
Server: Apache/2.0.52 (Unix)
Last-Modified: Sun, 23 Jan 2005 14:09:32 GMT
ETag: "94094-8af1-a1f73f00"
Accept-Ranges: bytes
Content-Length: 35569
Connection: close
Content-Type: image/jpeg


Коментарии нужны?

Это сообщение отредактировал(а) dimes - 5.5.2005, 15:30
PM ICQ   Вверх
PROme
Дата 5.5.2005, 17:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 346
Регистрация: 23.7.2003
Где: Kiev

Репутация: -1
Всего: 1



спасибо smile


--------------------
SEO-мастер
PM MAIL WWW   Вверх
dimes
Дата 5.5.2005, 17:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 249
Регистрация: 20.7.2004
Где: то около СПБ

Репутация: 2
Всего: 14



и тебе спасибо smile
PM ICQ   Вверх
PROme
Дата 5.5.2005, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 346
Регистрация: 23.7.2003
Где: Kiev

Репутация: -1
Всего: 1



хм.. странно, на одних хостах нормально, а другие выдают только:

HTTP/1.1 200 OK
Date: Thu, 05 May 2005 14:49:29 GMT
Server: Apache/1.3.33 (Unix) mod_auth_passthrough/1.8 mod_log_bytes/1.2 mod_bwlimited/1.4 FrontPage/5.0.2.2635 PHP-CGI/0.1b
X-Powered-By: PHP/4.3.11
Connection: close
Content-Type: text/html

что делать??? smile


--------------------
SEO-мастер
PM MAIL WWW   Вверх
dimes
Дата 11.5.2005, 12:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 249
Регистрация: 20.7.2004
Где: то около СПБ

Репутация: 2
Всего: 14



значит не судьба smile
Если сервер не вернул сколько он возращает то сделать ничего нельзя... imho конечно
PM ICQ   Вверх
InfMag
Дата 15.5.2005, 11:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


…
***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



PROme
Это называется - защита контента.
Он не выдает тебе размер, потому что ты можешь использовать чужой хост как файл хранилище.
Я вот писал download скрипт, который качает файлы с других хостов адресом моего сайта. Типа
http://site.ru/index.php?s=download&id=123
Когда не получаешь размер файла и не указываешь его в заголовке документа (типа http://site.ru/index.php?s=download&id=123), то файловые менеждеры типа ReGet не могут разбивать файлы на части, говорить сколько они весят и говорить сколько времени осталось. smile
PM   Вверх
RaZoR
Дата 16.5.2005, 19:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 97
Регистрация: 6.5.2004
Где: Оренбург

Репутация: нет
Всего: 1



Код

/*
* Gets the filesize of a remotely located file 
* 
* @access   public 
* @param    string    $url     URL to file 
* @return   integer            filesize in bytes 
*/ 
function getRemoteSize($url) { 
    $parsedUrl = parse_url($url); 
    $host = $parsedUrl['host']; 
    $path = $parsedUrl['path']; 
    $ourhead = ''; 
     
    $fp = fsockopen($host, 80, $errno, $errstr, 20); 
    if(!$fp) { 
        exit("$errstr ($errno)<br />\n"); 
    } else { 
        $out  = "HEAD $url HTTP/1.1\r\n"; 
        $out .= "HOST: dummy\r\n"; 
        $out .= "Connection: close\r\n\r\n"; 
         
        fputs($fp,$out); 
        while (!feof($fp)) { 
            $ourhead = sprintf("%s%s", $ourhead, fgets ($fp,128)); 
        } 
    } 
    fclose($fp); 
    $split1 = explode("content-length: ", strtolower($ourhead)); 
    if(!@$split1[1]) exit('Error: No content length'); 
    $split2 = explode("\r\n", $split1[1]); 
    $size = (int) $split2[0]; // size in bytes 
     
    return $size; 
}

PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0457 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.