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

Форум PHP

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

 

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

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

тема: можно ли средствами РНР анализировать файлы на чужом хосте?
 
 автор: xpom   (04.01.2007 в 16:38)   письмо автору
 
 

Подскажите, кто знает!
Можно с помощью php сделать так, чтобы в html форме, когда будут заносить ссылочку на картинку в текстовое поле, чтобы форма проверяла вес этой картинки, т.е. чтобы вес не превышал кокогото заданного?
Или, если картинка, которая загружается на странице превышает какой-то заданный вес, не отображать ее вообще?
Что-то из этих вариантов можно сделать?

   
 
 автор: cheops   (04.01.2007 в 21:58)   письмо автору
 
   для: xpom   (04.01.2007 в 16:38)
 

Возможно вам будут интересны ответы на задачу N 13. Определение размера файла на удалённом хосте.

   
 
 автор: xpom   (04.01.2007 в 23:16)   письмо автору
 
   для: cheops   (04.01.2007 в 21:58)
 

А можно в ответе 003 ответе поставить ограничение загрузки файла, т.е. если при загрузки достигло ограничения переставало загружать?

<?php 
    
////////////////////////////////////////////////// 
    // Функция определения размера удаленного файла 
    // $Id: postfilesize.php, Zero Cool Exp $ 
    ////////////////////////////////////////////////// 
    
function postfilesize($hostname$filepath
    { 
        
// Открываем соединение 
        
$line ''
        
$fp fsockopen($hostname80$errno$errstr30); 
        if( !isset(
$fp) ) 
        { 
            echo 
$errstr "(" $errno ")<br />\n"
        } 
        else 
        { 
            
// Формируем HTTP-запрос для передачи его серверу 
            
$headers  "GET " $filepath " HTTP/1.1\r\n"
            
$headers .= "Host: " $hostname "\r\n"
            
$headers .= "Connection: Close\r\n\r\n"
            
// Отправляем запрос 
            
fwrite($fp$headers); 
            
$end false
            while( !
$end 
            { 
                
$line fgets($fp1024); 
                ( 
trim($line == '') ) ? $end true $out[] = $line
            } 
            
// Закрываем соединение 
            
fclose($fp); 
        } 
        
// Объединяем содержимое массива $out[] в одну строку 
        
$lines implode(" "$out); 
        
// Определяем число байтов в файле 
        
preg_match("|Content-Length:[\s]+([\d]+)|i"$lines$matches); 
        
// Возвращаем результат 
        
return $matches[1]; 
    } 
    
// Увеличиваем время работы скрипта 
    
set_time_limit(180); 
    
// Получаем размер файла на удаленном сервере 
    
$host = ( isset($_GET['host']) ) ? $_GET['host'] : 'www.softtime.ru'
    
$path = ( isset($_GET['path']) ) ? $_GET['path'] : '/files/whois.zip'
    echo 
'Размер файла <b>' $host $path '</b>: ' postfilesize($host$path); 
?> 

   
 
 автор: Sergey89   (04.01.2007 в 23:20)   письмо автору
 
   для: xpom   (04.01.2007 в 23:16)
 

Этот скрипт не загружает файл! Он только выясняет его размер, по заголовку Content-Lenght.

   
 
 автор: kasmanaft   (05.01.2007 в 05:22)   письмо автору
 
   для: Sergey89   (04.01.2007 в 23:20)
 

Этот загружает...

"GET " . $filepath . " HTTP/1.1\r\n"

Нужно использовать метод HEAD

   
 
 автор: kasmanaft   (05.01.2007 в 05:30)   письмо автору
 
   для: xpom   (04.01.2007 в 23:16)
 

Проверяйте выданный размер ф-й postfilesize($host, $path) и сравнивайте его со своим ограничением ... если размер меньше - грузим, больше - соответственно нет

   
 
 автор: xpom   (05.01.2007 в 13:14)   письмо автору
 
   для: kasmanaft   (05.01.2007 в 05:30)
 

Подскажите, пожалуйста, как лучше сделать, если мне нужно при заполнении html формы в текстовом поле указывают ссылку на картинку, а мне ее не нужно загружать, нужно просто узнать какой объем картинки при нажатии кнопки отправить в html форме, если превысит предельный размер, сново возвращаем на страницу html форму?
HELP PLEASE!

   
 
 автор: xpom   (05.01.2007 в 16:23)   письмо автору
 
   для: xpom   (05.01.2007 в 13:14)
 

Please!!!

   
 
 автор: Telemax   (05.01.2007 в 16:56)   письмо автору
 
   для: xpom   (05.01.2007 в 16:23)
 

Вот есть такая "фигня":
----------------------------------------------------------------------------------------------------------------------------
post_max_size
= Возможные значения: число байтов (по умолчанию - 8 МБ)
= Где устанавливается: php.ini, .htaccess.
Указывает максиамльный размер данных, которое можно передать методом POST.
-----------------------------------------------------------------------------------------------------------------------------
upload_max_filesize
= Возможные значения: число байтов (по умолчанию 2 МБ)
= Где устанавливается: php.ini, .htaccess.
Задает размер файла, который пользователь сможет закачать на сервер
----------------------------------------------------------------------------------------------------------------------------
Если в скрипте, то используется функция ini_set()
Т.е. все делается либо в начале скрипта, либо прямо в .htaccess прописывается!
Т.е. пишешь мол в этот каталог нельзя загружать фалы > 150K и все, а если кто не понял, то ты же не виноват.

string ini_set ( string varname, string newvalue )
Sets the value of the given configuration option. Returns the old value on success, FALSE on failure. The configuration option will keep this new value during the script's execution, and will be restored at the script's ending.

   
 
 автор: /|\';..;'/|\   (05.01.2007 в 16:29)   письмо автору
 
   для: xpom   (05.01.2007 в 13:14)
 

Учитесь пользоваться поиском!
http://softtime.ru/forum/read.php?id_forum=1&id_theme=23691

   
 
 автор: xpom   (05.01.2007 в 19:56)   письмо автору
 
   для: /|\';..;'/|\   (05.01.2007 в 16:29)
 

Подскажите, а как сделать чтобы при указании в текстовом поле ссылки html формы в интернет на картинку, не загружая её, проверить в обработчике html формы её размер и сравнить с допустимым размером?

   
Rambler's Top100
вверх

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