mirror of
https://github.com/anthonyaxenov/iptv.git
synced 2024-11-22 13:34:45 +00:00
Initial commit
This commit is contained in:
commit
35941ec56e
54
channels.ini
Normal file
54
channels.ini
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
[1]
|
||||||
|
name='smarttvapp.ru'
|
||||||
|
pls='https://smarttvapp.ru/app/iptvfull.m3u'
|
||||||
|
src='https://smarttvapp.ru/aktualnyiy-i-rabochiy-iptv-pleylist-m3u/'
|
||||||
|
|
||||||
|
[2]
|
||||||
|
name='IPTV Forever RU webhalpme.ru'
|
||||||
|
pls='https://webhalpme.ru/listru.m3u'
|
||||||
|
src='https://webhalpme.ru/samoobnovljaemye-plejlisty-iptv-2019/'
|
||||||
|
|
||||||
|
[3]
|
||||||
|
name='IPTV Forever webhalpme.ru'
|
||||||
|
pls='https://webhalpme.ru/list.m3u'
|
||||||
|
src='https://webhalpme.ru/samoobnovljaemye-plejlisty-iptv-2019/'
|
||||||
|
|
||||||
|
[4]
|
||||||
|
name='iptvm3u.ru ONE'
|
||||||
|
pls='https://iptvm3u.ru/onelist.m3u'
|
||||||
|
src='https://iptvm3u.ru/one/'
|
||||||
|
|
||||||
|
[5]
|
||||||
|
name='iptvm3u.ru HD'
|
||||||
|
pls='https://iptvm3u.ru/hdlist.m3u'
|
||||||
|
src='https://iptvm3u.ru/iptv-hd/'
|
||||||
|
|
||||||
|
[6]
|
||||||
|
name='smarttvnews.ru'
|
||||||
|
pls='https://smarttvnews.ru/apps/iptvchannels.m3u'
|
||||||
|
src='https://smarttvnews.ru/rabochiy-i-aktualnyiy-iptv-pleylist-m3u-kanalyi-v-sd-i-hd-kachestve/'
|
||||||
|
|
||||||
|
[7]
|
||||||
|
name='webarmen.com'
|
||||||
|
pls='https://webarmen.com/my/iptv/auto.nogrp.m3u'
|
||||||
|
src='https://webarmen.com/my/iptv/index.php'
|
||||||
|
|
||||||
|
[8]
|
||||||
|
name='tv-smart-tv.ru'
|
||||||
|
pls='http://tv-smart-tv.ru/iptv/pl.m3u'
|
||||||
|
src='https://tv-smart-tv.ru/besplatnyy-samoobnovlya-emyy-iptv-pley-list-bolee-600-kanalov-m3u/'
|
||||||
|
|
||||||
|
[9]
|
||||||
|
name='Детский IPTV «Kids»'
|
||||||
|
pls='https://webhalpme.ru/kids.m3u'
|
||||||
|
src='https://webhalpme.ru/samoobnovljaemye-plejlisty-iptv-2019/'
|
||||||
|
|
||||||
|
[10]
|
||||||
|
name='Плейлист от SlyNet'
|
||||||
|
pls='http://urlcut.ru/FreeBestTV.m3u'
|
||||||
|
src='https://webhalpme.ru/samoobnovljaemye-plejlisty-iptv-2019/'
|
||||||
|
|
||||||
|
[11]
|
||||||
|
name='webarmen.com 18+'
|
||||||
|
pls='https://webarmen.com/my/iptv/auto.xxx.m3u'
|
||||||
|
src='https://webarmen.com/my/iptv/xxx.php'
|
97
index.php
Normal file
97
index.php
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
ini_set('display_errors', 1);
|
||||||
|
ini_set('display_startup_errors', 1);
|
||||||
|
error_reporting(E_ALL);
|
||||||
|
|
||||||
|
function getChannelCount($pls_url) {
|
||||||
|
$content = file_get_contents($pls_url);
|
||||||
|
$matches = [];
|
||||||
|
preg_match_all('[EXTINF]', $content, $matches);
|
||||||
|
return count($matches[0]);
|
||||||
|
}
|
||||||
|
|
||||||
|
// $my_url = $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'].'?s=';
|
||||||
|
$my_url = $_SERVER['SERVER_NAME'].'/'.basename(__DIR__).'?s=';
|
||||||
|
|
||||||
|
$data = parse_ini_file('channels.ini', true);
|
||||||
|
|
||||||
|
if (!empty($_GET['dbg'])) {
|
||||||
|
var_dump(__DIR__);
|
||||||
|
var_dump(basename(__DIR__));
|
||||||
|
var_dump($_SERVER);
|
||||||
|
die;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (empty($_GET['s'])) { ?>
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="ru">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>IPTV Playlists</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1>Список самообновляемых плейлистов для IPTV</h1>
|
||||||
|
<p>
|
||||||
|
Эти плейлисты бесплатны и подобраны вручную из открытых источников.<br>
|
||||||
|
Поддержкой самих плейлистов занимаются сервисы и ресурсы, указанные как источник (если таковые имеются).
|
||||||
|
</p>
|
||||||
|
<p>Чтобы подключить плейлист, нужно в настройках IPTV-плеера добавить ссылку в следующем формате:</p>
|
||||||
|
<pre><?=$my_url?><strong>ID</strong></pre>
|
||||||
|
<p>
|
||||||
|
где <strong>ID</strong> - один из указанных ниже идентификаторов.<br>
|
||||||
|
Либо указывать ссылку на оригинальный плейлист в последней колонке.
|
||||||
|
</p>
|
||||||
|
<table width="100%" border="1" cellpadding="1">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<td style="text-align: center">ID</td>
|
||||||
|
<td>Название, источник</td>
|
||||||
|
<td style="text-align: center">Каналов</td>
|
||||||
|
<td>Плейлист</td>
|
||||||
|
<!-- <td>Оригинал</td> -->
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<?php foreach ($data as $id => $element) { ?>
|
||||||
|
<tr>
|
||||||
|
<td style="text-align: center">
|
||||||
|
<strong><?=$id?></strong>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<strong>
|
||||||
|
<?php if (empty($element['src'])) { ?>
|
||||||
|
<?=$element['name']?>
|
||||||
|
<?php } else { ?>
|
||||||
|
<a href="<?=$element['src']?>" target="_blank" rel="noopener nofollow"><?=$element['name']?></a>
|
||||||
|
<?php } ?>
|
||||||
|
</strong>
|
||||||
|
</td>
|
||||||
|
<td style="text-align: center"><?=getChannelCount($element['pls'])?></td>
|
||||||
|
<td onclick="prompt('Скопируйте адрес плейлиста', '<?=$my_url?><?=$id?>')"
|
||||||
|
title="Нажмите, чтобы скопировать адрес"
|
||||||
|
style="cursor:pointer">
|
||||||
|
<strong>
|
||||||
|
<pre><?=$my_url?><?=$id?></pre>
|
||||||
|
</strong>
|
||||||
|
</td>
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
<td onclick="prompt('Скопируйте адрес плейлиста', '<?=$element['pls']?>')"
|
||||||
|
title="Нажмите, чтобы скопировать адрес"
|
||||||
|
style="cursor:pointer">
|
||||||
|
<pre><?=$element['pls']?></pre>
|
||||||
|
</td>
|
||||||
|
*/
|
||||||
|
?>
|
||||||
|
</tr>
|
||||||
|
<?php } ?>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<!-- <h2>Как этим пользоваться?</h2> -->
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
<?php } else {
|
||||||
|
header('Location: '.$data[(int)$_GET['s']-1]['pls']);
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user