За последние 24 часа нас посетили 62314 программистов и 1740 роботов. Сейчас ищут 2166 программистов ...

как из html файла вырезать JavaScript

Тема в разделе "PHP для новичков", создана пользователем mendosa, 11 янв 2008.

  1. mendosa

    mendosa Активный пользователь

    С нами с:
    15 окт 2007
    Сообщения:
    3
    Симпатии:
    0
    Добрый день.Пробую сложить 40 html страниц. У меня локальный сервер апач 2.2 рнр5 мускул5.Для начала решил потренироваться на двух.Получился след.код

    <?php
    $text1=file_get_contents ("http://localhost/1/2/1552.htm");
    $text2=file_get_contents ("http://localhost/1/2/1557.htm");
    $text=$text1 . $text2;
    $text = str_replace("<html>", "", $text);
    $text = str_replace("</html>", "", $text);
    echo $text;
    ?>
    все сложилось но вторая страница становится видна в браузере когда уберу JavaScript который находится после текста первой страницы.Таким образом подскажите как вырезать еще и JavaScript ?
    Посмотрел что в регулярных выражениях используется функция preg_replace
    $search = array ("'<script[^>]*?>.*?</script>'si", // Вырезает javaScript
    но мне нужно вырезать только javaScript может есть решение попроще,короче может каким то образом использовать для этого функцию str_replase() или strip_tags().
     
  2. Hight

    Hight Старожил
    Команда форума Модератор

    С нами с:
    5 мар 2006
    Сообщения:
    7.153
    Симпатии:
    0
    Адрес:
    из злой параллельной вселенной
    mendosa
    Код форматируйте соответствующими тегами, а то его читать никто не будет.
     
  3. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    Вырезать элементы SCRIPT с содержимым:
    Код (Text):
    1. $text = preg_replace('~<script[^>]*>.*?</script>~si', '', $text);
    JS-код в html-атрибутах при этом не вырежется.

    Весь остальной пост и проблема абсолютно непонятны.
     
  4. mendosa

    mendosa Активный пользователь

    С нами с:
    15 окт 2007
    Сообщения:
    3
    Симпатии:
    0
    vasa c
    HTML:
    1.  
    2. Вечер добрый.Спасибо за совет.Попробую применить.Вопрос показался непонятным.Есть много небольших файлов html надо их сложить в один большой файл.Можно конечно в редакторе каком то но это долго.Программ таких не видел.Вот м пытаюсь при помощи рнр. Сложил для тренировки два файла убрал тэги <html> и </html>. Оказалось недостаточно.Текст второго файла все рано в браузере не виден. опытным путем определил что мешает JavaScript который находится в этих файлах.
     
  5. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    Структура страниц во всех файлах одна?
    Т.е. есть общие элементы, а где-то по центру контент, который и нужно сложить?
     
  6. mendosa

    mendosa Активный пользователь

    С нами с:
    15 окт 2007
    Сообщения:
    3
    Симпатии:
    0
    Приветствую тебя vasa c. Все получилось.Спасибо за помощь.Вот такой вид

    PHP:
    1. <?php
    2. $text1=file_get_contents ("http://localhost/4/2/1552.htm");
    3. $text2=file_get_contents ("http://localhost/4/2/1557.htm");
    4. $text=$text1 . $text2;
    5. $text = str_replace("<html>", "", $text);
    6. $text = str_replace("</html>", "", $text);
    7. $text = preg_replace('~<script[^>]*>.*?</script>~si', '', $text);
    8. echo $text;
    9. ?>
    10.