We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 31809
    • 28 Posts
    Здравствуйте всем! Появилась необходимость взяь инфу с другого сайта (курс специфической валюты)

    Нашел такой скрипт:

    <?php
    /* объявляем глобальную переменную */
    global $my_getinfo;
    $my_getinfo="http://www.nbe.com.eg/en/ExchangeRate.aspx";

    if ($my_getinfo){
    echo my_getinfo($my_getinfo);
    }

    function my_getinfo($url){

    /* открываем соденинение c $URL */
    $handle = fopen($url, "r");
    $contents = ’’;
    while (!feof($handle))
    { $contents .= fread($handle, 8192); }
    fclose($handle); /* считываем всё, и закрываем соединение, вообще, тут можно придумать кэш, по необходимости, можно заносить кэш в mysql */

    /* тут вырезаем, или заменяем что-то не нужное, у меня тут массив заменяется на массив
    $contents = str_replace(’
    ’, ’&lt;br&gt;’, $contents);
    $contents = str_replace(’
    ’, ’&lt;br/&gt;’, $contents);*/

    /* если кому-то тоже нужно много заменять/вырезать, вот пример:
    $contents = str_replace(
    array(’http://thisdomain.ru’, ’src="’, ’
    ’),
    array(’http://mydomain.ru’, ’src="/’, ’&lt;br/&gt;’),
    $contents);
    // и так далее
    */


    $contents=iconv("windows-1251", "UTF-8", $contents);

    return $contents;

    }
    ?>

    Все работает, но вместе с таблицей валют тащится еще всякая ерунда, такие как поисковая форма и выпадающее меню. Так как я в этом ни бум бум то прошу помощи: как убрать лишнее и оставить таблицу с валютой (картинки с флагами стран не цепляются, да и не очень то и надо, хотя было бы не плохо)
    Заранее спасибо.
      • 22301
      • 1,084 Posts
        [img]http://jurist-info.ru/pic/rrr.jpg[/img]

        Безжалостный пияр!
        Artima -- неуч!
        Осторожно: преступная локализация -- modx-cms.ru
        Баштанник Андрей -- мегапрограммер из Белоруссии и поедатель говна, очень критично настроенный молодой человек!

        Дисклеймер для общительных: даю сам себе право транслировать в открытый эфир содержание лички, just for fun
        • 31809
        • 28 Posts
        Я этот снипет видел, он у меня выдает. Задал вопрос, доведенный до отчаяния)))
        Fatal error: Call to undefined function: mb_strtolower() in /home/ric-dahab/ric-dahab.ru/docs/manager/includes/document.parser.class.inc.php(769) : eval()’d code on line 61
        Я так понимаю, что это что-то с базой данных, а вот что - не знаю. И это снипет берет данные из подготовленного файла XML, а тот что я привел выше, берет контент с любой страницы, проблема в том, что я не знаю, как потом из этого контента вырезать нужное. А в PHP я мягко говоря, не силен (((
          • 28814 ☆ A M B ☆
          • 1,086 Posts
          Quote from: Vovandah at Feb 04, 2010, 01:28 AM

          Fatal error: Call to undefined function: mb_strtolower() in /home/ric-dahab/ric-dahab.ru/docs/manager/includes/document.parser.class.inc.php(769) : eval()’d code on line 61
          Я так понимаю, что это что-то с базой данных, а вот что - не знаю.
          Не вдавался в подробности Вашего диалога, если честно, но данная ошибка говорит совсем о другом: в конфигурации PHP на Вашем сервере отсутствует функция mb_strtolower. Скорее всего не подключен PHP модуль mb_string. Чтобы заработало, нужно обратиться в техподдержку сервера и попросить их включить этот модуль.
            Разработка сайтов и программных модулей на MODX.
            Опыт работы на MODx с 2005 года. Высокое качество.
            Компания Baltic Design Colors: http://www.bdcolors.ru.
            • 22301
            • 1,084 Posts
            тоже в php не силён:), но у меня под доллары и евро вот так (откуда взял и как сделал, уже не помню):

              // Получаем текущие курсы валют в rss-формате с сайта www.cbr.ru 
              $content = get_content(); 
              // Разбираем содержимое, при помощи регулярных выражений 
              $pattern = "#<Valute ID=\"([^\"]+)[^>]+>[^>]+>([^<]+)[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>([^<]+)[^>]+>[^>]+>([^<]+)#i"; 
              preg_match_all($pattern, $content, $out, PREG_SET_ORDER); 
              $dollar = ""; 
              $euro = ""; 
              foreach($out as $cur) 
              { 
                if($cur[2] == 840) $dollar = str_replace(",",".",$cur[4]); 
                if($cur[2] == 978) $euro   = str_replace(",",".",$cur[4]); 
              } 
            
            
              function get_content() 
              { 
                // Формируем сегодняшнюю дату 
                $date = date("d/m/Y"); 
                // Формируем ссылку 
                $link = "http://www.cbr.ru/scripts/XML_daily.asp?date_req=$date"; 
                // Загружаем HTML-страницу 
                $fd = fopen($link, "r"); 
                $text=""; 
                if (!$fd) echo "Запрашиваемая страница не найдена"; 
                else 
                { 
                  // Чтение содержимого файла в переменную $text 
                  while (!feof ($fd)) $text .= fgets($fd, 4096); 
                } 
                // Закрыть открытый файловый дескриптор 
                fclose ($fd); 
                return $text; 
              }
              [img]http://jurist-info.ru/pic/rrr.jpg[/img]

              Безжалостный пияр!
              Artima -- неуч!
              Осторожно: преступная локализация -- modx-cms.ru
              Баштанник Андрей -- мегапрограммер из Белоруссии и поедатель говна, очень критично настроенный молодой человек!

              Дисклеймер для общительных: даю сам себе право транслировать в открытый эфир содержание лички, just for fun
              • 31809
              • 28 Posts
              Модуль влючил, теперь выдает
              Parse error: syntax error, unexpected $end in /home/ric-dahab/ric-dahab.ru/docs/manager/includes/document.parser.class.inc.php(769) : eval()’d code on line 20

              Конечно Parse error лучше чем Fatal, но....(((