Главная :: Форум :: Web ClipArt :: Поиск :: Статистика :: Топ 10 :: Публикация :: Рекомендовать
netadmin.ws
Панель управления Регистрция свободна! Календарь Список пользователей Часто задаваемые вопросы Поиск по форуму Архив скриптов Главная   
Форум сетевых администраторов
Форум сетевых администраторов Форум сетевых администраторов » Веб Форумы » VBulletin 3.x.x » Хаки от Netadmin или "Сделай сам" » Контроль размера картинок, вставленных тегом Img
Страницы (2): « 1 [2]
Предыдущая тема     Следующая тема
Автор
Тема    Новая тема     Ответить на эту тему
fStrange
Участник+
Средний рейтинг: 5 | Оценок: 5
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Jul 2003
Место проживания:
Публикаций: 125
Статус: fStrange в оф-лайне
[сообщение #71950]

kerk
неза что..
там ошибка..
проверка неправильно
уже разобрался.. но времени нет исправлю в понедельник..

__________________
Новая жизнь HMM3(Герои 3.5 WoG)http://hmm3.fclan.ru

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 29-10-2004 17:29
Нажмите сюда для просмотра профайла fStrange Отправить Персональное сообщение fStrange Посетить домашнию страничку fStrange! Найти сообщения от fStrange Добавить fStrange в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
fStrange
Участник+
Средний рейтинг: 5 | Оценок: 5
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Jul 2003
Место проживания:
Публикаций: 125
Статус: fStrange в оф-лайне
[сообщение #72033]

НЕЛП!!!

час постучался об стенку и выяснил, что ни фига не получается

мне пришло в голову 3 варианта проверки и все не работают
проверка вида

PHP:


$fp 
= @fopen($link,"r");

if (!
$fp)


не работает .. ругается с 500 ошибкой

пробуем через getimagesize

PHP:

if ($image_data = getimagesize($link))


та же 500

пробовал fsockopen, тут проблемка.. выставить маленький таймаут и оно грузиться не буде.. выставить большой .. долго будет ждать если урл с ошибкой

__________________
Новая жизнь HMM3(Герои 3.5 WoG)http://hmm3.fclan.ru

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 01-11-2004 16:37
Нажмите сюда для просмотра профайла fStrange Отправить Персональное сообщение fStrange Посетить домашнию страничку fStrange! Найти сообщения от fStrange Добавить fStrange в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
phprus
Участник+
Средний рейтинг: 4.95 | Оценок: 20
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Oct 2003
Место проживания: Пермь
Публикаций: 227
Статус: phprus в оф-лайне
[сообщение #72038]

fStrange
PHP и ошибка 500?! Ð_азве такое возможно? Ð_то скорее всего глюки сервера Apache.

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 01-11-2004 19:01
Нажмите сюда для просмотра профайла phprus Отправить Персональное сообщение phprus Посетить домашнию страничку phprus! Найти сообщения от phprus Добавить phprus в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
fStrange
Участник+
Средний рейтинг: 5 | Оценок: 5
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Jul 2003
Место проживания:
Публикаций: 125
Статус: fStrange в оф-лайне
[сообщение #72046]

phprus
Глюк это когда один раз..
но когда регулярно повторяется это уже баг
могу и скрин бросить...
я же говорю вчера час бился... сначала я думал, что я полный идиот.. как работать с функцией fopen и getimagesize не знаю

__________________
Новая жизнь HMM3(Герои 3.5 WoG)http://hmm3.fclan.ru

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 02-11-2004 07:20
Нажмите сюда для просмотра профайла fStrange Отправить Персональное сообщение fStrange Посетить домашнию страничку fStrange! Найти сообщения от fStrange Добавить fStrange в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
polo
Администратор
Средний рейтинг: 4.77 | Оценок: 106
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: May 2001
Место проживания:
Публикаций: 4642
Статус: polo в оф-лайне
[сообщение #72096]

Вот исправленная версия.

PHP:


function handle_bbcode_img_match($link) 
{ 
    
$link = strip_smilies(str_replace('\"', '"', $link)); 

    
// remove double spaces -- fixes issues with wordwrap 
    
$link = str_replace('  ', '', $link); 

    
$max_width = 250; // указываем максимально допустимую ширину 
    
$max_height = 150; // указываем максимально допустимую высоту 
    
    
    
$image_data = @getimagesize($link); 
    if (!empty(
$image_data))
    {
        
$width = $image_data['0']; 
            
$height = $image_data['1']; 

            
$x_ratio = $max_width/$width; 
            
$y_ratio = $max_height/$height; 

        if (
$width > $max_width OR $height > $max_height) 
            {
                if ((
$width*$y_ratio) < $max_width) 
        { 
            
$width = ceil($y_ratio*$width); 
            
$height = $max_height; 
        } 
        else 
        { 
            
$height = ceil($x_ratio*$height); 
            
$width = $max_width; 
        } 
        }
            
$image_size = " width=\"$width\" height=\"$height\"";
    }


    return 
'<img src="' .  $link . '" border="0"' . $image_size . ' alt="" />'; 
}

__________________
Всегда есть решение.

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 03-11-2004 08:36
Нажмите сюда для просмотра профайла polo Отправить Персональное сообщение polo Посетить домашнию страничку polo! Найти сообщения от polo Добавить polo в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
kerk
k0t
Средний рейтинг: 4.92 | Оценок: 12
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Oct 2004
Место проживания:
Публикаций: 148
Статус: kerk в оф-лайне
[сообщение #72117]

polo
я тут нашел более "утяжеленный" вариант, с такими настройками, как и хотел,
размер указывается только по ширине, в сообщении появляется уменьшенное кликабельное изображение с надписью внизу: "кликнуть здесь, для просмотра оригинала"
========
при вставке в теги [img] ссылку с неверным расширением или без расширения, в посте получаем маленькое окошко с текстом "Link is Broken" (настраивается, можно например предупредить узера, что бы указывал правильный линк)
в случае отсутствия картинки на сервере, получаем окошко "not found" (так же настраивается, можно написать "404 не найдено" )
в случае обращения к серверу и он не отвечает, получаем: "Server is Down"
========
поставил на локалке, все работает пока...
но уж больно много исправлений и дополнений нужно делать возможно ли облегчить?
хотя автор этого хака не убирает оригинальные строки кода, а только делает их закоментированными, ниже подставляя свой код
========
что интересно, можно указать совсем маленький размер картинки (почти тоже самое, что реализовано в vB 3.0.3 с кликабельными картинками в аттачах) и она так и будет отображаться, но вот размер в KB такой же и останется...
========
если интересно, поковыряй, скажи свое мнение...
хак прикреплю в этом сообщении

Файл: imagesize.txt
Был скачан 23 раз(а).

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 03-11-2004 20:28
Нажмите сюда для просмотра профайла kerk Отправить Персональное сообщение kerk Найти сообщения от kerk Добавить kerk в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Konkere
Участник
Средний рейтинг: 4 | Оценок: 1

Зарегистрирован: Sep 2004
Место проживания:
Публикаций: 15
Статус: Konkere в оф-лайне
[сообщение #75336]

kerk хак действительно довольно сложный проще в хак polo добавить несколько строк

PHP:


function handle_bbcode_img_match($link) 
{ 
    
$link = strip_smilies(str_replace('\"', '"', $link)); 

    
// remove double spaces -- fixes issues with wordwrap 
    
$link = str_replace('  ', '', $link); 

    
$max_width = 400; // указываем максимально допустимую ширину 
    
$max_height = 200; // указываем максимально допустимую высоту 
    
$space = 5; // указываем максимально допустимое свободное пространство вокруг картинки
    
$origin = '';
     
    
$image_data = @getimagesize($link); 
    if (!empty(
$image_data)) 
    { 
        
$width = $image_data['0']; 
        
$height = $image_data['1']; 
        
$x_ratio = $max_width/$width; 
        
$y_ratio = $max_height/$height; 

        if (
$width > $max_width OR $height > $max_height) 
        { 
            if ((
$width*$y_ratio) < $max_width) 
            { 
                
$width = ceil($y_ratio*$width); 
                
$height = $max_height; 
            } 
            else 
            { 
                
$height = ceil($x_ratio*$height); 
                
$width = $max_width; 
            }
                
$origin = '<br /><div class="smallfont"><a href="' . $link . '" target="_blank">Открыть в новом окне</a></div>';
            }
        
$image_size = " width=\"$width\" height=\"$height\" hspace=\"$space\" vspace=\"$space\""; 
        return 
'<a href="' . $link . '" target="_blank"><img src="' .  $link . '" border="0"' . $image_size . ' alt="Картинка расположена на другом сервере" /></a>' . $origin; 
    }
    else
    {
        return 
'<img src="' . $stylevar['imgdir_misc'] . '/404.gif" alt="404 Object not found" width="104" height="81" border="0" />'; 
    }
}

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 19-03-2005 16:24
Нажмите сюда для просмотра профайла Konkere Отправить Персональное сообщение Konkere Найти сообщения от Konkere Добавить Konkere в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
kerk
k0t
Средний рейтинг: 4.92 | Оценок: 12
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Oct 2004
Место проживания:
Публикаций: 148
Статус: kerk в оф-лайне
[сообщение #75403]

снес тот, что поставил раньше, потому как все равно ошибки вылетают, если в теме много картинок, да даже если теги отключены в этом разделе, но узер постит фотку, заключая ее в теги - вылетает ошибка (не долго продержался этот хак)...
Konkere
поставил твой вариант, теперь вообще ничего не показывает
в коде хака есть упоминание о том, что 404-ю гифку нужно пихнуть в дир. images/misc форума, но путем экспериментов удалось выяснить, что показывает этот гиф только если он лежит в корне форума
вот только его и показывает....
сам реальный рисунок существует, но его не показывает, наверное где то ошибка...
самому сложно разобраться в этом, ну никак мне пхп не дается... =))

kerk добавил 24-03-2005 в 04:45:47:
нашел еще одно решение проблеммы, тоже не очень много изменять в коде:

PHP:


function handle_bbcode_img_match($link)
{
global 
$vboptions;

$link = strip_smilies(str_replace('\"', '"', $link));

// remove double spaces -- fixes issues with wordwrap
$link = str_replace(' ', '', $link);

if (
$vboptions['legacypostbit'])
{
return 
'<a href=' . $link . ' target="_blank"><img src="' . $link . '" onload="if(screen.width-600 < this.width) {this.width=screen.width-600;this.alt='Full View';}" onmouseover="if(this.alt) this.style.cursor='hand';" border="0"></a>';
}
else
{
return 
'<a href=' . $link . ' target="_blank"><img src="' . $link . '" onload="if(screen.width-80 < this.width) {this.width=screen.width-80;this.alt='Full View';}" onmouseover="if(this.alt) this.style.cursor='hand';" border="0"></a>';
}
}


но при просмотре темы - подтормаживает...

Сообщение было отредактировано kerk 24-03-2005 в 03:51

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 24-03-2005 03:41
Нажмите сюда для просмотра профайла kerk Отправить Персональное сообщение kerk Найти сообщения от kerk Добавить kerk в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Konkere
Участник
Средний рейтинг: 4 | Оценок: 1

Зарегистрирован: Sep 2004
Место проживания:
Публикаций: 15
Статус: Konkere в оф-лайне
[сообщение #75407]

quote:
поставил твой вариант, теперь вообще ничего не показывает
в коде хака есть упоминание о том, что 404-ю гифку нужно пихнуть в дир. images/misc форума, но путем экспериментов удалось выяснить, что показывает этот гиф только если он лежит в корне форума
вот только его и показывает....


я забыл вставить в начало функции

PHP:

global $stylevar;


а всё остальное работате
можешь посмотртеть вот например: http://vlab.netsys.ru/forum/showpos...91&postcount=14

Konkere добавил 24-03-2005 в 09:09:34:
Вот последний, самый свежий вариант

Фразы
тип GLOBAL
имя: in_new_windows
текст: Open in New Windows
перевод: Открыть в новом окне

имя: pic_located
текст: The Picture is located on other Server
перевод: Картинка расположена на другом сервере

имя: pic_not_found
текст: 404 Picture not found
перевод: 404 Картинка не найдена

нужно в includes/functions_bbcodeparse.php найти функцию function handle_bbcode_img_match и заменить ее на:

PHP:

function handle_bbcode_img_match($link) 
{
     global 
$stylevar, $vbphrase;

    
$link = strip_smilies(str_replace('\"', '"', $link)); 

    
// remove double spaces -- fixes issues with wordwrap 
    
$link = str_replace('  ', '', $link); 

    
$max_width = 400; // указываем максимально допустимую ширину 
    
$max_height = 200; // указываем максимально допустимую высоту 
    
$space = 5; // указываем максимально допустимое свободное пространство вокруг картинки
     
    
$image_data = @getimagesize($link); 
    if (!empty(
$image_data)) 
    { 
        
$width = $image_data['0']; 
        
$height = $image_data['1']; 
        
$x_ratio = $max_width/$width; 
        
$y_ratio = $max_height/$height; 

        if (
$width > $max_width OR $height > $max_height) 
        { 
            if ((
$width*$y_ratio) < $max_width) 
            { 
                
$width = ceil($y_ratio*$width); 
                
$height = $max_height; 
            } 
            else 
            { 
                
$height = ceil($x_ratio*$height); 
                
$width = $max_width; 
            }
            
$origin = '<br /><div class="smallfont"><a href="' . $link . '" target="_blank">' . $vbphrase['in_new_windows'] . '</a></div>';
        }
        
$image_link = '<a href="' . $link . '" target="_blank"><img src="' .  $link . '" border="0" width="' . $width . '" height="' . $height . '" hspace="' . $space . '" vspace="' . $space . '" alt="' . $vbphrase['pic_located'] . '" /></a>' . $origin; 
    }
    else
    {
        
$image_link = '<img src="' . $stylevar['imgdir_misc'] . '/404.gif" alt="' . $vbphrase['pic_not_found'] . '" width="104" height="81" border="0" />'; 
    }
    return 
$image_link;
}

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 24-03-2005 07:59
Нажмите сюда для просмотра профайла Konkere Отправить Персональное сообщение Konkere Найти сообщения от Konkere Добавить Konkere в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
kerk
k0t
Средний рейтинг: 4.92 | Оценок: 12
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Oct 2004
Место проживания:
Публикаций: 148
Статус: kerk в оф-лайне
[сообщение #75423]

Konkere
все равно не показывает...
сейчас 404 гиф лежит там, где нужно и отображает от-туда и только его
положил 2 одинаковые картинки в разные места и все равно - ничего...
версия форума 3.0.7

Файл: not.jpg
Был скачан 14 раз(а).

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 24-03-2005 23:06
Нажмите сюда для просмотра профайла kerk Отправить Персональное сообщение kerk Найти сообщения от kerk Добавить kerk в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Konkere
Участник
Средний рейтинг: 4 | Оценок: 1

Зарегистрирован: Sep 2004
Место проживания:
Публикаций: 15
Статус: Konkere в оф-лайне
[сообщение #75428]

чего-то ты не так сделал, http://testf.netsys.ru/forum/showthread.php?t=4 у меня то-же 3.0.7 и всё работате

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 25-03-2005 08:46
Нажмите сюда для просмотра профайла Konkere Отправить Персональное сообщение Konkere Найти сообщения от Konkere Добавить Konkere в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
kerk
k0t
Средний рейтинг: 4.92 | Оценок: 12
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Oct 2004
Место проживания:
Публикаций: 148
Статус: kerk в оф-лайне
[сообщение #75434]

Да вроде все правильно...
копи/паст в одном месте - трудно ошибиться... =))
заменяем функцию:
function handle_bbcode_img_match($link)
на код из поста выше
а может еще где чего нужно править?

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 25-03-2005 12:54
Нажмите сюда для просмотра профайла kerk Отправить Персональное сообщение kerk Найти сообщения от kerk Добавить kerk в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Konkere
Участник
Средний рейтинг: 4 | Оценок: 1

Зарегистрирован: Sep 2004
Место проживания:
Публикаций: 15
Статус: Konkere в оф-лайне
[сообщение #75447]

да вроде больше ничего не надо
а посмотри как выглядит адрес до картинок в теле страницы

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 25-03-2005 21:16
Нажмите сюда для просмотра профайла Konkere Отправить Персональное сообщение Konkere Найти сообщения от Konkere Добавить Konkere в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя

Страницы (2): « 1 [2]


Формат времени GMT. Текущее время 12:23.
Новая тема   Ответить на эту тему [ Версия для печати Печать | Отправить эту страницу другу/знакомому! Отправить | Получать уведомления об обновлении этой темы Подписка ] Предыдущая тема     Следующая тема
Навигация по форуму:
Оценка темы:

Правила форума:
Вы не можете создавать новые темы.
Вы не можете отвечать на существующие темы.
Вы не можете прикреплять файлы.
Вы не можете редактировать свои сообщения.
HTML теги выкл.
Спец. код вкл.
Смайлики вкл.
[IMG] тег выкл.
 

Page generated in 1.92493200 seconds (99.52% PHP - 0.48% MySQL) with 27 queries.


  Главная :: Форум :: Web ClipArt :: Поиск :: Статистика :: Топ 10 :: Публикация :: Рекомендовать
©NetAdmin.ws, 2001-2026.
Powered by: vBulletin
Copyright ©2000, 2001, Jelsoft Enterprises Limited.