Модуль vkontakte player

Тема в разделе "DLE", создана пользователем sunyang, 9 июл 2010.

Информация :
Актуальная версия DataLife Engine 11.2
( Final Release v.11.2 | Скачать DataLife Engine | Скачать 11.2 demo )
Нужно ли обновляться | Как обновиться | Изменения в шаблонах
> Нет русских символов <
[Приватная тема DLE (Все подробности в ЛС к модератору раздела)]

Версии 11.1 и ниже - уязвимы!

Локализации | F.A.Q. | Внешний вид
Правила раздела | Правила форума
Обсуждение хайда карается баном!
В каждом сообщении указывайте версию DLE, которого они касаются!
Статус темы:
Закрыта.
Модераторы: killoff
  1. sunyang

    sunyang

    Регистр.:
    25 апр 2009
    Сообщения:
    444
    Симпатии:
    30
    Видел на многих сайтах онлайн видео плеер vkontakte.
    Есть такой плеер на длешку?
    Можно его поставить?
     
  2. Plan

    Plan Постоялец

    Регистр.:
    24 май 2010
    Сообщения:
    144
    Симпатии:
    24
    Скрипт обрезает тег iframe
    Решение:
    Способ #1
    открыть parse.class.php, найти
    PHP:
    'id''iframe''ilayer',
    заменить на
    PHP:
    'id''ilayer',
    потом найди и удали такую строку
    PHP:
    $source preg_replace"#<iframe#i""&lt;iframe"$source );
    PS: При использовании данного спрособа появляется баг Недостаточная фильтрация входящих данных

    Способ #2 (Автор - Emissar)
    открываем файл engine/modules/addnews.php и находим в нем следующий код(у меня он на 92 строке начинается:(
    PHP:
    if ($config['allow_site_wysiwyg'] == "yes"){

        
    $full_story $db->safesql($parse->BB_Parse($parse->process($_POST['full_story'])));
        
    $short_story $db->safesql($parse->BB_Parse($parse->process($_POST['short_story'])));
        
    $allow_br 0;

    } else {

        
    $full_story $db->safesql($parse->BB_Parse($parse->process($_POST['full_story']), false));
        
    $short_story $db->safesql($parse->BB_Parse($parse->process($_POST['short_story']), false));
        
    $allow_br 1;

    }
    Заменяем его на следующий:

    PHP:
    if ($config['allow_site_wysiwyg'] == "yes")
    {
        
    preg_match('/\<iframe src=\\\"http\:\/\/vkontakte\.ru\/video_ext.php\?oid=.*?&id=.*?&hash=.*?\\\" width=\\\".*?\\\" height=\\\".*?\\\" frameborder=\\\".*?\\\"\>\<\/iframe\>/si'$_POST['full_story'], $vk_match);
        
    $vk_match[1] = str_replace('\\'''$vk_match[0]);
        
    $full_story str_replace($vk_match[0], "{vk_video}"$_POST['full_story']);
        
    $full_story $db->safesql($parse->BB_Parse($parse->process($full_story)));
        
    $full_story str_replace("{vk_video}"$vk_match[1], $full_story);
        
        
    preg_match('/\<iframe src=\\\"http\:\/\/vkontakte\.ru\/video_ext.php\?oid=.*?&id=.*?&hash=.*?\\\" width=\\\".*?\\\" height=\\\".*?\\\" frameborder=\\\".*?\\\"\>\<\/iframe\>/si'$_POST['full_story'], $vk_match);
        
    $vk_match[1] = str_replace('\\'''$vk_match[0]);
        
    $short_story str_replace($vk_match[0], "{vk_video}"$_POST['short_story']);
        
    $short_story $db->safesql($parse->BB_Parse($parse->process($short_story)));
        
    $short_story str_replace("{vk_video}""<center>".$vk_match[1]."</center>"$short_story);
        
        
    $allow_br 0;

    }
    else
    {
        
    preg_match('/\<iframe src=\\\"http\:\/\/vkontakte\.ru\/video_ext.php\?oid=.*?&id=.*?&hash=.*?\\\" width=\\\".*?\\\" height=\\\".*?\\\" frameborder=\\\".*?\\\"\>\<\/iframe\>/si'$_POST['full_story'], $vk_match);
        
    $vk_match[1] = str_replace('\\'''$vk_match[0]);
        
    $full_story str_replace($vk_match[0], "{vk_video}"$_POST['full_story']);
        
    $full_story $db->safesql($parse->BB_Parse($parse->process($full_story), false));
        
    $full_story str_replace("{vk_video}""<center>".$vk_match[1]."</center>"$full_story);
        
        
    preg_match('/\<iframe src=\\\"http\:\/\/vkontakte\.ru\/video_ext.php\?oid=.*?&id=.*?&hash=.*?\\\" width=\\\".*?\\\" height=\\\".*?\\\" frameborder=\\\".*?\\\"\>\<\/iframe\>/si'$_POST['full_story'], $vk_match);
        
    $vk_match[1] = str_replace('\\'''$vk_match[0]);
        
    $short_story str_replace($vk_match[0], "{vk_video}"$_POST['short_story']);
        
    $short_story $db->safesql($parse->BB_Parse($parse->process($short_story), false));
        
    $short_story str_replace("{vk_video}""<center>".$vk_match[1]."</center>"$short_story);
        
        
        
    $allow_br 1;

    }
    Далее отредактируем файл админ-панели(engine/inc/addnews.php).
    Ищем в нем код(у меня на 401 строке начался:

    PHP:
       $full_story $parse->process($_POST['full_story']);
        
    $short_story $parse->process($_POST['short_story']);
        
    $title $parse->process($_POST['title']);

        if (
    $config['allow_admin_wysiwyg'] == "yes" OR $allow_br != '1'){

            
    $full_story $db->safesql($parse->BB_Parse($full_story));
            
    $short_story $db->safesql($parse->BB_Parse($short_story));

        } else {

            
    $full_story $db->safesql($parse->BB_Parse($full_storyfalse));
            
    $short_story $db->safesql($parse->BB_Parse($short_storyfalse));
        }
    Заменяем его на:

    PHP:
       preg_match('/\<iframe src=\\\"http\:\/\/vkontakte\.ru\/video_ext.php\?oid=.*?&id=.*?&hash=.*?\\\" width=\\\".*?\\\" height=\\\".*?\\\" frameborder=\\\".*?\\\"\>\<\/iframe\>/si'$_POST['full_story'], $vk_match);
        
    $vk_match[1] = str_replace('\\'''$vk_match[0]);
        
    $full_story str_replace($vk_match[0], "{vk_video}"$_POST['full_story']);
        
    $full_story $parse->process($_POST['full_story']);
        
        
    preg_match('/\<iframe src=\\\"http\:\/\/vkontakte\.ru\/video_ext.php\?oid=.*?&id=.*?&hash=.*?\\\" width=\\\".*?\\\" height=\\\".*?\\\" frameborder=\\\".*?\\\"\>\<\/iframe\>/si'$_POST['full_story'], $vk_match);
        
    $vk_match[1] = str_replace('\\'''$vk_match[0]);
        
    $short_story str_replace($vk_match[0], "{vk_video}"$_POST['short_story']);
        
    $short_story $parse->process($_POST['short_story']);
        
    $title $parse->process($_POST['title']);

        if (
    $config['allow_admin_wysiwyg'] == "yes" OR $allow_br != '1'){

            
    $full_story $db->safesql($parse->BB_Parse($full_story));
            
    $full_story str_replace("{vk_video}""<center>".$vk_match[1]."</center>"$full_story);
            
    $short_story $db->safesql($parse->BB_Parse($short_story));
            
    $short_story str_replace("{vk_video}""<center>".$vk_match[1]."</center>"$short_story);

        } else {

            
    $full_story $db->safesql($parse->BB_Parse($full_storyfalse));
            
    $full_story str_replace("{vk_video}""<center>".$vk_match[1]."</center>"$full_story);
            
    $short_story $db->safesql($parse->BB_Parse($short_storyfalse));
            
    $short_story str_replace("{vk_video}""<center>".$vk_match[1]."</center>"$short_story);
        }
     
  3. FreShBY

    FreShBY Создатель

    Регистр.:
    8 авг 2009
    Сообщения:
    12
    Симпатии:
    1
    не самый оптимальный вариант.

    При вашем варианте любой сможет "вписать" фрейм, соответственно защиты от хаков не будет.
     
  4. Plan

    Plan Постоялец

    Регистр.:
    24 май 2010
    Сообщения:
    144
    Симпатии:
    24
    Читай внимательнее! :mad:
     
  5. palbanec

    palbanec

    Регистр.:
    2 июл 2010
    Сообщения:
    457
    Симпатии:
    32
    НЕ сорьтесь...
     
  6. gipnogitler

    gipnogitler Постоялец

    Регистр.:
    15 окт 2008
    Сообщения:
    90
    Симпатии:
    9
  7. Plan

    Plan Постоялец

    Регистр.:
    24 май 2010
    Сообщения:
    144
    Симпатии:
    24
    Обновил свой пост.


    Тут не ссорятся, а ты видимо просишь бан! :read:

    Тему закрыть, ответ был дан. :tcl:
     
  8. Cepera-exp

    Cepera-exp Постоялец

    Регистр.:
    8 янв 2009
    Сообщения:
    102
    Симпатии:
    33
    Есть еще 1 способ: есть сркипты специальные для контакта, которые справа внизу от видео выводят код для вставки на сайт.
    Пример:
    Сам скрипт называется - vKoptimizer - vkopt.net.ru
     
  9. mafiarus

    mafiarus Постоялец

    Регистр.:
    30 июл 2009
    Сообщения:
    78
    Симпатии:
    4
    Это не скрипт,это шас контакт дал такую возможность
     
Статус темы:
Закрыта.