ShopForBux.com
Всё обо всём

Неполадки со скриптом php

79 3
user avatar
Пользователь
На сайте 14 лет
Сообщений : 223
Репутация : 0
10 лет назад #5667
Здравствуйте, имеется скрипт парсер погоды от яндекса:

С недавнего времени он работать перестал, вероятно яндекс погода заблочило мой айпи хостинга ... не могу понять почему

Возможно версия php на хостинге например изменилась..

Скрипт тут http://ideone.com/oaizUe


<?php
$city_id = 28666; //id гоÑ
€Ð¾Ð´
а, впÐ
¸ÑÐ°Ñ
;‚ÑŒ свÐ
¾Ð¹, моÐ
¶Ð½Ð¾ узн
;атÑ
0; туÑ
‚ https://p...content-available-to-author-only..
.x.ru/static/cities.xml - пар
;аме
09;‚Ñ€ city id=
$cache_lifetime = 7200; //вр
8;µÐ¼Ñ кэÑ
ˆÐ° фай
;ла в сек
;унÐ
;´Ð°Ñ…, 3600=1 час
;
$cache_file = 'weather_'.$city_id.'.xml'; // врÐ
µÐ¼ÐµÐ
9;ны
8;¹ фай
;л-кÑ
41;ш

function loadxmlyansex($city_id)
{
$url = 'http://e...content-available-to-author-on
ly...x.ru/weather-ng/forecasts/'.$city_id.'
;.xml';
$userAgent = 'Googlebot/2.1 (+http://www.google.com/bot.html)'
;
$xml = 'weather_'.$city_id.'.xml';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);
$output = curl_exec($ch);
$fh = fopen($xml, 'w');
fwrite($fh, $output);
fclose($fh);
}

if ( file_exists($cache_file) ) {
$cache_modified = time() - @filemtime($cache_file);
if ( $cache_modified > $cache_lifetime )

{
//обÐ
89;ов
08;»ÑÐµÐ&
#188; фай
;л поÐ
³Ð¾Ð´
ы, есл
8;¸ врÐ
µÐ¼Ñ фай
;ла кэÑ
ˆÐ° усÑ
‚арÐ
;µÐ»Ð¾
loadxmlyansex($city_id);
}
}
else {
//есл
208;¸ нет
; фай
;ла поÐ
³Ð¾Ð´
ы воÐ
¾Ð±Ñ‰Ð
;µ, зак
8;°Ñ‡Ð¸
08;²Ð°ÐµÐ&
#188; его
;
loadxmlyansex($city_id);
}
?>
<?php
if(file_exists($cache_file)):
$data = simplexml_load_file($cache_file); ?>
  • <?php
    foreach($data->day as $day):?>
  • <?php $s6=$s6+1;?><?php if($s6==1) echo "checked";
    else
    echo "";?> name="tabs" id="tab<?php echo $s1=$s1+1;?>">
    <?php echo getDayDate($day['date']);?
    >


    Ð
    ;£Ñ‚Ñ€
    ;ом#62;ДÐ&amp
    ;#189;ем
    Ве
    09;‡ÐµÑ€
    208;¾Ð¼
    0;td>Но&
    amp;#209;‡ÑŒÑ&
    amp;#142;
    <?php for($i = 0;$i < 4;$i++): // т.к. нам
    ; не нуÐ
    ¶Ð½Ñ‹ дан
    ;ныÐ
    ;µ day_short и night_short, мы осÑ
    ‚анÐ
    ;°Ð²Ð»Ð
    84;вае&
    #208;¼ прÐ
    ¾Ñ…о
    д на 4
    $img = $day->day_part[$i]->{'image-v3
    '};?><?php echo getTempSign($day->day_part[$i]-
    2;{'temperature-data'}->avg);?>
    ; °C <?php echo $img;?>.png<?php endfor;?>
    <?php for($i = 0;$i < 4;$i++): // т.к. нам
    ; не нуÐ
    ¶Ð½Ñ‹ дан
    ;ныÐ
    ;µ day_short и night_short, мы осÑ
    ‚анÐ
    ;°Ð²Ð»Ð
    84;вае&
    #208;¼ прÐ
    ¾Ñ…о
    д на 4?>

    <?php echo $day->day_part[$i]->weather_type;?
    >

    &
    #208;²ÐµÑ‚&amp
    ;#208;µÑ€: <?php echo getWindDirection($day->day_part[$i]
    ;->wind_direction).' '.$day->day_part[$i]->wind_spe
    ed;?> м/с

    62;

    вл
    8;°Ð¶Ð½Ð
    190;ст
    209;Œ: <?php echo $day->day_part[$i]->humidity;?>
    ;%

    д&
    #208;°Ð²Ð»Ðµ&a
    mp;#208;½Ð¸Ðµ&
    #58; <?php echo $day->day_part[$i]->pressure;?>
    ; мм рт. ст.

    62;
    <?php endfor;?>v>
    <?php
    endforeach;?>

    <?php
    endif;
    // поÐ
    »ÑƒÑ‡Ð
    ;°ÐµÐ¼ лок
    ;али
    08;·Ð¾Ð²
    208;°Ð½Ð½&
    #209;ƒÑŽ дат
    ;у
    function getDayDate($date)
    {
    $date = strtotime($date);
    $months = array('','/01','/02',&
    #39;/03','/04','/05','/06&
    #39;,'/07','/08','/09',
    9;/10','/11','/12');
    $days = array('ВÐ&
    #161;','ПÐ&amp
    ;#157;', 'ВТ'
    , 'СР', 'ЧТ', 'ПТ'
    , 'СБ'
    );
    return $days[date('w', $date)].', '.(int)date('d',$date)
    .' '.$months[date('n', $date)];
    }
    // поÐ
    »ÑƒÑ‡Ð
    ;°ÐµÐ¼ зна
    8;º тем
    ;пеÑ
    8;атÑ
    31;ры
    function getTempSign($temp)
    {
    $temp = (int)$temp;
    return $temp > 0 ? '+'.$temp : $temp;
    }
    // поÐ
    »ÑƒÑ‡Ð
    ;°ÐµÐ¼ нап
    ;раÐ
    8;лен
    208;¸Ñ вет
    ;ра
    function getWindDirection($wind)
    {
    $wind = (string)$wind;
    $wind_direction = array('s'=>'↑ ю','n'=>'&a
    mp;#8595; с','w'=>'&a
    mp;#8594; з','e'=>'←
    в','sw'=>'&
    amp;#8599; юз','se'=
    >'↖ юв','
    ;nw'=>'↘ сз','ne'=
    >'↙ св')
    ;
    return $wind_direction[$wind];
    }
    ?>
user avatar
Пользователь
На сайте 15 лет
Сообщений : 44
Репутация : 0
10 лет назад #5668
что за адрес такой $url в функции loadxmlyansex ?
есть права чтобы создать фаил $cache_file ?
user avatar
Пользователь
На сайте 14 лет
Сообщений : 223
Репутация : 0
10 лет назад #5669
Цитата: BeerMan
что за адрес такой $url в функции loadxmlyansex ?
есть права чтобы создать фаил $cache_file ?


Хз хз

вот отсюда скрипт брал
Ссылка
Автор темы
author avatar
moskit
Пользователь
На сайте 14 лет
Сообщений 223
Тем 21
Репутация 0
Теги темы
Автор не добавил тегов для этой темы
Ответить
Написал(а):