1. Задавайте здесь вопросы о коде, которые не подходят в другие разделы, такие как:
    Дизайн > Верстка
    PHP > Как сделать на PHP
    Скрыть объявление

Изменить содержимое bat файла

Тема в разделе "Web Coding", создана пользователем RusBiT, 13 сен 2007.

Статус темы:
Закрыта.
Модераторы: latteo
  1. RusBiT

    RusBiT Постоялец

    Регистр.:
    29 мар 2007
    Сообщения:
    102
    Симпатии:
    3
    Для определенной ссылки надо сгенерировать bat файлик, ссылок много, в файле надо изменить только пару буковок, а всё остальное содержимое оставить по старому.

    К примеру

    channel.php?tv=ntv скачивается файл с содержимым
    Код:
    tskill vlc
    start c:\Progra~1\videolan\vlc\vlc http://tv.mylan:7777/ntv  :udp-caching=6200 --deinterlace-mode=blend :zoom=0.5
    channel.php?tv=ort скачивается файл с содержимым
    Код:
    tskill vlc
    start c:\Progra~1\videolan\vlc\vlc http://tv.mylan:7777/ort  :udp-caching=6200 --deinterlace-mode=blend :zoom=0.5
     
  2. Nafania

    Nafania

    Регистр.:
    24 мар 2007
    Сообщения:
    167
    Симпатии:
    46
    Неясен вопрос. Конкретнее объясните.
     
  3. tempik

    tempik Создатель

    Регистр.:
    29 май 2007
    Сообщения:
    12
    Симпатии:
    2
    как я понял ты хочешь это?
    PHP:
    <?php
    #списк каналов
    $channel "(ort|ntv|rtr)";
    if ( isset(
    $_GET['tv']) && ($_GET['tv'] !== "") && ereg("^[A-z0-9]*$"$_GET['tv']) && eregi($channel$_GET['tv']) ) {
        
    $out "tskill vlc\r\n".
             
    "start c:\Progra~1\videolan\vlc\vlc http://tv.mylan:7777/" $_GET['tv'] . "  :udp-caching=6200 --deinterlace-mode=blend :zoom=0.5";
        
    header('Content-type: application/bat');
        
    header('Content-Disposition: attachment; filename="bat.bat"');
        print 
    $out;
    } else echo 
    "нету такого канала :(";
    ?>
     
    RusBiT нравится это.
  4. RusBiT

    RusBiT Постоялец

    Регистр.:
    29 мар 2007
    Сообщения:
    102
    Симпатии:
    3
    Ага. Именно это! Только твой скрипт тож не работает :(

    Код:
    Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/lan/tv/index.php:2) in /var/www/html/disnet.lan/tv/index.php on line 8
    
    Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/disnet.lan/tv/index.php:2) in /var/www/html/lan/tv/index.php on line 9
    tskill vlc start c:\Progra~1\videolan\vlc\vlc http://tv.mylan:7777/ort :udp-caching=6200 --deinterlace-mode=blend :zoom=0.5
    
     
  5. Nafania

    Nafania

    Регистр.:
    24 мар 2007
    Сообщения:
    167
    Симпатии:
    46
    RusBiT: удали строку #списк каналов
     
    RusBiT нравится это.
  6. RusBiT

    RusBiT Постоялец

    Регистр.:
    29 мар 2007
    Сообщения:
    102
    Симпатии:
    3
    Под правил немного под себя
    <?php

    $channel = array("CNL", "sport_planet", "TVC_SIBERIA", "MTV", "TV3", "RBN_TV", "MUZIC_BOX_RU", "2X2", "DTV_2", "A_ONE", "JETIX", "AM_LIFE", "TVC", "TBN_RUSSIA", "7_LIVE", "KULTURA", "ORT_EUROPA", "TV_ZVEZDA", "MUZ_TV", "MIR_TV", "ILLUSION_PLUS", "TV_CLUB", "HUMOR_TV", "O2_TV", "RENTV_7", "FASHION_TV", "SOYUZ", "SPAS", "OBLAKA", "MUZIC_BOX_TV", "SHKOLNIK_TV", "TV3_3", "LUXE_TV", "VESTI_RTR");
    if ( isset($_GET['tv']) && ($_GET['tv'] !== "")) {

    $out = "tskill vlc\r\n".
    "start c:\Progra~1\videolan\vlc\vlc http://10.0.7.3:7777/" . $_GET['tv'] . "#1 :udp-caching=16200 --deinterlace-mode=blend :zoom=0.5";
    header('Content-type: application/bat');
    header('Content-Disposition: attachment; filename="tv.bat"');
    print $out;
    } else
    {
    for($i=0;$i<=count($channel);$i++)
    {
    echo"<a href='?tv=$channel[$i]'><b>$channel[$i]</b></a>";
    echo"<br>";
    }
    }

    ?>

    Не подскажите что в .htaccess прописать чтобы запрос www.tv.lan/index.php?tv=O2_TV просто выглядел как www.tv.lan/O2_TV
    Т.е. ЧПУ прикрутить
     
  7. tempik

    tempik Создатель

    Регистр.:
    29 май 2007
    Сообщения:
    12
    Симпатии:
    2
    потому что скрипт посылает заголовоки (чтобы вылезло окно для скачки)
    PHP:
    header('Content-type: application/bat'); 
        
    header('Content-Disposition: attachment; filename="bat.bat"');
    но поскольку у тебя уже где-то до этого заголовок послан браузеру, то уже его не изменить поэтому вылетает с ошибкой
    п.с. что подправил не вижу постов мало :confused:
     
  8. RusBiT

    RusBiT Постоялец

    Регистр.:
    29 мар 2007
    Сообщения:
    102
    Симпатии:
    3
    Осталось только ЧПУ добавить :)
     
  9. Grey911

    Grey911 Создатель

    Регистр.:
    10 сен 2007
    Сообщения:
    17
    Симпатии:
    5
    Для ЧПУ используй mod-rewrite.
    Удобнее всего составлять для него правила на
    mod-rewrite-wizard.com
    В твоем случае будет:
    HTML:
    RewriteEngine On
    RewriteRule ^([^/]*)$ /index.php?tv=$1 [L]
     
  10. RusBiT

    RusBiT Постоялец

    Регистр.:
    29 мар 2007
    Сообщения:
    102
    Симпатии:
    3
    С этим я тоже давно разобрался :)
     
Статус темы:
Закрыта.