Показать сообщение отдельно
Старый 09.07.2010, 00:06 Вверх   #26
Коварный тип
 
Аватар для Serberg
Serberg вне форума
Доп. информация
Хорошо Как зашифровать ссылку на видео файл в плеере DLE

Как зашифровать ссылку на видео файл в плеере DLE

Я думаю что не я один мучался таким вопросом. Проблема сайтов выложенными видео роликами в онлайн заключается в том что появляется много личей, которые жрут Ваш трафик. Для того чтобы отшугнуть простых школяров я нашел действенный способ автоматичнской шифрации ссылки на файл в плеере.

Метод проверен на DLE 8,2 - 8,5 (возможно и на более поздних будет работать, но их пока не существует).

Для начала делаем резервную копию файла parse.class.php, затем открываем его для редактирования и находим в нем фразу типа:

Код:
if( $type == "flv" or $type == "mp4" or $type == "m4v" or $type == "m4a" ) {
нужно отсюда и до фразы:

Код:
} elseif( $type == "avi" or $type == "divx" ) {
дописать код:

Код:
function decode_char($c) 
{ 
  $a1 = array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "W", "G", "X", "M", "H", "R", "U", "Z", "I", "D", "=", "N", "Q", "V", "B", "L"); 
  $a2 = array("b", "z", "a", "c", "l", "m", "e", "p", "s", "J", "x", "d", "f", "t", "i", "o", "Y", "k", "n", "g", "r", "y", "T", "w", "u", "v"); 
  $result = $c; 
  for($j = 0; $j < count($a1); $j++) { 
    if ($c == $a1[$j][0]) { 
      $result = $a2[$j][0]; 
      break; 
    } 
    if ($c == $a2[$j][0]) { 
      $result = $a1[$j][0]; 
      break; 
    } 
  } 
  return $result; 
} 
         
function encode_str($s) 
{ 
  $s = base64_encode($s); 
  $result = ''; 
  for($i = 0; $i < strlen($s); $i++) { 
    $result .= decode_char($s[$i]); 
  } 
  return $result; 
} 
$url = encode_str($url);
            if( $config['flv_watermark'] ) $watermark = ",showWatermark:'always',watermarkUrl:'{THEME}/dleimages/flv_watermark.png',watermarkLinkUrl:''";
            else $watermark = "";
        if ($comment == "")
            {
                return "<!--dle_video_begin:{$url}--><object id=\"video\" type=\"application/x-shockwave-flash\" data=\"".$config['http_home_url']."engine/classes/flashplayer/ВАШ_ПЛЕЕР.swf\" width=\"500\" height=\"395\"><param name=\"bgcolor\" value=\"#900000\" /><param name=\"allowFullScreen\" value=\"true\" /><param name=\"allowScriptAccess\" value=\"always\" /><param name=\"movie\" value=\"".$config['http_home_url']."engine/classes/flashplayer/ВАШ_ПЛЕЕР\" /><param name=\"flashvars\" value=\"st=ВАШ_ПУТЬ_К_СТИЛЯМ&amp;file={$url}\" /></object><!--dle_video_end-->";
            }
            else
            {
                return "<!--dle_video_begin:{$url}--><object id=\"video\" type=\"application/x-shockwave-flash\" data=\"".$config['http_home_url']."engine/classes/flashplayer/ВАШ_ПЛЕЕР\" width=\"500\" height=\"395\"><param name=\"bgcolor\" value=\"#900000\" /><param name=\"allowFullScreen\" value=\"true\" /><param name=\"allowScriptAccess\" value=\"always\" /><param name=\"movie\" value=\"".$config['http_home_url']."engine/classes/flashplayer/ВАШ_ПЛЕЕР\" /><param name=\"flashvars\" value=\"comment={$comment}&amp;st=ВАШ_ПУТЬ_К_СТИЛЯМ&amp;file={$url}\" /></object><!--dle_video_end-->";
            }
        } elseif( $type == "txt" ) {
            return "<!--dle_video_begin:{$url}--><object id=\"video\" type=\"application/x-shockwave-flash\" data=\"".$config['http_home_url']."engine/classes/flashplayer/ВАШ_ПЛЕЕР\" width=\"500\" height=\"395\"><param name=\"bgcolor\" value=\"#900000\" /><param name=\"allowFullScreen\" value=\"true\" /><param name=\"allowScriptAccess\" value=\"always\" /><param name=\"movie\" value=\"".$config['http_home_url']."engine/classes/flashplayer/ВАШ_ПЛЕЕР\" /><param name=\"flashvars\" value=\"st=ВАШ_ПУТЬ_К_СТИЛЯМ&amp;pl={$url}\" /></object><!--dle_video_end-->";
Обратите внимание на выделенный в коде текст, замените значения на свои (ВАШ_ПУТЬ_К_СТИЛЯМ, ВАШ_ПЛЕЕР).

Работает с стандартным плеером, мне так же удалось привязать шифрование к Uppod плееру.
  Ответить с цитированием
Cказали cпасибо:
 
Время генерации страницы 0.05778 секунды с 10 запросами