За последние 24 часа нас посетили 17656 программистов и 1584 робота. Сейчас ищут 1396 программистов ...

Помогите отдель РНР от HTML

Тема в разделе "PHP для новичков", создана пользователем dotez, 30 июн 2017.

  1. dotez

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

    С нами с:
    18 мар 2010
    Сообщения:
    41
    Симпатии:
    0
    Привет, народ у меня в одно файле и рнр скрипт и непосредственно вывод данных на страницу, а мне это никак не подходит как мне перенести html код в отдбельный файл и сделать просто чтобы он получал данные из .php
    а люди непосредественно заходили лишь на .thml страницу а не на php скрипт.
    надеюсь на вашу помощь,

    PHP:
    1. <?php
    2.  
    3. // Ленты
    4.  
    5. $rss = array(
    6.           'http://www.consultant.ru/rss/ow.xml',
    7.           'http://glavkniga.ru/rss/yandexnews',
    8.       'https://news.yandex.ru/Moscow/index.rss'
    9. );
    10.  
    11. // Ключи
    12.  
    13. $search = array(
    14.         'авто',
    15.     'машины'
    16. );
    17.  
    18. function get($url)
    19. {
    20.     $c = curl_init();
    21.     curl_setopt($c, CURLOPT_COOKIESESSION, TRUE);
    22.     curl_setopt($c, CURLOPT_CRLF, TRUE);
    23.     curl_setopt($c, CURLOPT_RETURNTRANSFER, TRUE);
    24.     curl_setopt($c, CURLOPT_FOLLOWLOCATION, TRUE);
    25.     curl_setopt($c, CURLOPT_SSL_VERIFYPEER, FALSE);
    26.     curl_setopt($c, CURLOPT_USERAGENT, 'Opera/9.80 (Windows NT 6.1; U; zh-tw) Presto/2.7.62 Version/11.01');
    27.     curl_setopt($c, CURLOPT_URL, $url);
    28.     return curl_exec($c);
    29.     curl_close($c);
    30. }
    31.  
    32. $url_data = '';
    33.  
    34. for ($i = 0; $i < count($rss); $i++) {
    35.     $url_data.= get($rss[$i]);
    36. }
    37.  
    38.     '<![CDATA[',
    39.     ']]>'
    40. ) , '', $url_data);
    41. preg_match_all('|<item>(.*)</item>|Uis', $dd, $arr);
    42.  
    43. for ($i = 0; $i < count($arr[0]); $i++) {
    44.     preg_match_all('|<title>(.*)</title>|Uis', $arr[0][$i], $arrr);
    45.     if (preg_match("/(" . implode('|', $search) . ")/is", $arrr[1][0])) {
    46.         $data[] = $arr[0][$i];
    47.     }
    48.  
    49.     unset($arrr);
    50. }
    51.  
    52. if (empty($data)) {
    53.     echo 'Новостей нету';
    54. }
    55.  
    56. for ($i = 0; $i < count($data); $i++) {
    57.     preg_match_all('|<description>(.*)</description>|Uis', $data[$i], $p);
    58.     preg_match_all('|<title>(.*)</title>|Uis', $data[$i], $title);
    59.     preg_match_all('|<link>(.*)</link>|Uis', $data[$i], $link);
    60.     preg_match_all('|<guid>(.*)</guid>|Uis', $data[$i], $guid);
    61.     preg_match_all('|<pubdate>(.*)</pubdate>|Uis', $data[$i], $time);
    62.     preg_match_all('|<enclosure url="(.*)"|Uis', $data[$i], $enclosure);
    63.     $time_n = substr($time[1][0], 5);
    64.     $e = explode(' ', $time_n);
    65.     array_pop($e);
    66.     $time = implode(' ', $e);
    67.     $mas[] = array(
    68.         'description' => $p[1][0],
    69.         'title' => $title[1][0],
    70.         'link' => $link[1][0],
    71.         'guid' => $guid[1][0],
    72.         'enclosure' => $enclosure[1][0],
    73.         'time' => $time
    74.     );
    75.     unset($p);
    76.     unset($title);
    77.     unset($link);
    78.     unset($guid);
    79.     unset($time);
    80. }
    81.  
    82. ?>
    83.  
    84.  
    85.  
    86. <!DOCTYPE html>
    87. <html >
    88. <head>
    89.   <meta charset="UTF-8">
    90.   <title>List.js - Pagination</title>
    91.  
    92.  
    93.  
    94.       <link rel="stylesheet" href="http://testik1.ml/rss/css/style.css">
    95. <style>
    96.                   /*div - контейнер для новости*/
    97.                   .rss{margin:10px;  padding-bottom: 15px;}
    98.                   /*div - контейнер для всей ленты*/
    99.                   .rss_container{padding:10px; background: #fff;}
    100.                   /*div - контейнер для медиа-файлов*/
    101.                   .media{background-color:#f0f0f0; background-image:url(https://www.rss-script.ru/img/skrepka.gif); background-repeat:no-repeat; padding-top: 5px;padding-bottom: 5px;padding-left: 13px}
    102.                   /*div - ссылка на медиа-файл*/
    103.                   .media a{color:#000000;font-size:0.7em}
    104.                   /*div - изображение медиа-файл*/
    105.                   .media a img{height:16px; border:0px; vertical-align: middle; text-decoration: none; margin:3px;}
    106.                   /*div - контейнер даты новости и заголовка rss-канала*/
    107.                   .rssdate{font-size:0.7em; color:#c0c0c0; margin:7px; }
    108.                   /*div - ссылка даты новости и заголовка rss-канала*/
    109.                   .rssdate a{color:#c0c0c0;}
    110.                   .pagination li {
    111.   display:inline-block;
    112.   padding:5px;
    113. }
    114.                </style>
    115.  
    116. </head>
    117.  
    118. <body>
    119.   <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
    120. <script src="//cdnjs.cloudflare.com/ajax/libs/list.js/1.5.0/list.min.js"></script>
    121.   <div id="page-body" class="page-body" role="main">
    122.             <div class="content pages-content">
    123.   <div id="test-list">
    124.    
    125.     <ul class="list">
    126.      
    127.                <?php
    128.                for ($i = 0; $i < count($mas); $i++) {
    129.                   echo '<div class="rss_container">
    130.                  <div class="rss">
    131.                  <h3><a href="'.$mas[$i]['link'].'" target="_blank">'.$mas[$i]['title'].'</a></h3>';
    132.                       if (!empty($mas[$i]['enclosure'])){
    133.                           echo '<img src="'.$mas[$i]['enclosure'].'" height="300" width="600"/>';
    134.                       }
    135.                   echo '
    136.                  <p>'.$mas[$i]['description'].'</p>
    137.                  <div class="rssdate"> <br>'.$mas[$i]['time'].'</div>
    138.                  </div>
    139.                  </div>
    140.                  '
    141.                   ;
    142.                  
    143.                  
    144.                }?>
    145.              
    146.     </ul>
    147.     <ul class="pagination"></ul>
    148.   </div>
    149.   </div>
    150.   </div>
    151.  
    152.     <script src="http://testik1.ml/rss/js/index.js"></script>
    153.  
    154. </body>
    155. </html>
     
  2. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.793
    Симпатии:
    1.330
    Адрес:
    Лень
    ноу парсинг
     
  3. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    @MouseZver он же парсит RSS, это API для ленты информации
     
  4. umbabaraumba

    umbabaraumba Новичок

    С нами с:
    18 июн 2017
    Сообщения:
    100
    Симпатии:
    17