mirror of
https://github.com/anthonyaxenov/iptv.git
synced 2024-11-22 05:24: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