Отображение данных с другого сервера

Тема в разделе "PHP", создана пользователем vredin, 5 апр 2010.

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

    vredin Читатель

    Заблокирован
    Регистр.:
    17 дек 2007
    Сообщения:
    141
    Симпатии:
    35
    Есть сервер, на нем сервис генерирует фид, надо прочитать этот фид и вывести на страницах сайтов на фри-хостингах

    написал такой вот код, на локалхосте с денвером работает на ура, а на фрихосте - не выводит ничего и ошибок не показывает(код приведен для фрихоста)
    PHP:
    <?php
    require('func.php'); 

    $path_to_get "http://vredin.ru/code.txt";
    $path_to_save "/htdocs/code.php";

    $result get_web_page($path_to_get);
    $html $result['content'];

    //echo($html);

    $fp fopen($path_to_save'w');
    fwrite($fp$html);
    fclose($fp);

    sleep(3);

    include(
    'code.php');

    ?>
    функция web_get_page выглядит так:
    PHP:
    function get_web_page$url )
    {
      
    $uagent "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)";

      
    $ch curl_init$url );
      
    curl_setopt($chCURLOPT_URL$url);
      
    curl_setopt($chCURLOPT_RETURNTRANSFER1);   // возвращает веб-страницу
      
    curl_setopt($chCURLOPT_HEADER0);           // не возвращает заголовки
      
    curl_setopt($chCURLOPT_FOLLOWLOCATION1);   // переходит по редиректам
      
    curl_setopt($chCURLOPT_ENCODING"");        // обрабатывает все кодировки
      
    curl_setopt($chCURLOPT_USERAGENT$uagent);  // useragent
      
    curl_setopt($chCURLOPT_CONNECTTIMEOUT120); // таймаут соединения
      
    curl_setopt($chCURLOPT_TIMEOUT120);        // таймаут ответа
      
    curl_setopt($chCURLOPT_MAXREDIRS10);       // останавливаться после 10-ого редиректа

      
    $content curl_exec$ch );
      
    $err     curl_errno$ch );
      
    $errmsg  curl_error$ch );
      
    $header  curl_getinfo$ch );
      
    curl_close$ch );

      
    $header['errno']   = $err;
      
    $header['errmsg']  = $errmsg;
      
    $header['content'] = $content;
      return 
    $header;
    }
     
  2. lobzik

    lobzik

    Регистр.:
    8 авг 2006
    Сообщения:
    311
    Симпатии:
    49
    на фри хосте нет курла, ибо нечего ему там делать. Обновляй данные через фтп, или используй file_get_contents(), если он тоже не запрещен.
     
    vredin нравится это.
  3. vredin

    vredin Читатель

    Заблокирован
    Регистр.:
    17 дек 2007
    Сообщения:
    141
    Симпатии:
    35
    file_get_contents() - работает шикарно, но опять же только на локалхосте :(

    конечно не хочется, но кажется придется инклюдить фид через JS
     
  4. lobzik

    lobzik

    Регистр.:
    8 авг 2006
    Сообщения:
    311
    Симпатии:
    49
    Ну, если не важна индексация поисковиками - то да. Советую реализовать загрузку готовых хтмл-страниц на фрихост через фтп.
     
Статус темы:
Закрыта.