Помощь Помогите с модулем

Тема в разделе "DLE", создана пользователем zloy_admin, 30 сен 2011.

Информация :
Актуальная версия DataLife Engine 11.3
( Final Release v.11.3 | Скачать DataLife Engine | Скачать 11.3 demo )
Нужно ли обновляться | Как обновиться | Изменения в шаблонах
> Нет русских символов <
[Приватная тема DLE (Все подробности в ЛС к модератору раздела)]

Версии 11.2 и ниже - уязвимы!

Локализации | F.A.Q. | Внешний вид
Правила раздела | Правила форума
Обсуждение хайда карается баном!
В каждом сообщении указывайте версию DLE, которого они касаются!
Статус темы:
Закрыта.
Модераторы: killoff
  1. zloy_admin

    zloy_admin Разработчик

    Заблокирован
    Регистр.:
    15 авг 2011
    Сообщения:
    184
    Симпатии:
    27
    имеется модуль погоды РНР
    PHP:
    <?php
    $pogoda 
    file_get_contents('http://export.yandex.ru/weather/?city=23848&#
    39;);
    preg_match('
    /<weather_type>(.*?)<\/weather_type
    >/i',$pogoda,$type);
    preg_match('
    /<dampness>(.*?)<\/dampness>/i
    ',$pogoda,$vlaga);
    preg_match('
    /<temperature>(.*?)<\/temperature&#
    62;/i',$pogoda,$temp);
    preg_match('
    /<image2>(.*?)<\/image2>/i
    9
    ;,$pogoda,$img2);
    preg_match('/<pressure>(.*?)<\/pressure>/i
    '
    ,$pogoda,$press);
    $vivod "<div style=\"float:left;display:inline;margin-top:5px;\"
    ;><font size = 3><strong>В Нефтеюганске
              
    $temp[1] °</strong></font>
              <img align=top src=
    $img2[1] /></div>
              <div style=\"display:inline;\">
              <font size = 2>
    "
    ;
    echo 
    $vivod;
    ?>
    Вывожу через {include file="engine/modules/pogoda.php"}
    помогите зделать на нем кэширование на 4 часа
     
  2. yavasilek

    yavasilek vasilek_gorbunok

    Регистр.:
    5 окт 2008
    Сообщения:
    1.178
    Симпатии:
    423
    прив. я в этом не силен, но попробуй так
    PHP:
    <?php 
    if( ! defined'DATALIFEENGINE' ) ) {
        die( 
    "Hacking attempt!" );
    }
    $vivod $dle_api->load_from_cache 'weather'14400);
    if( !
    $vivod ) {
        
    $pogoda file_get_contents('http://export.yandex.ru/weather/?city=23848'); 
        
    preg_match('/<weather_type>(.*?)</weather_type>/i',$pogoda,$type); 
        
    preg_match('/<dampness>(.*?)</dampness>/i',$pogoda,$vlaga); 
        
    preg_match('/<temperature>(.*?)</temperature>/i',$pogoda,$temp); 
        
    preg_match('/<image2>(.*?)</image2>/i9;,$pogoda,$img2); 
        preg_match('
    /<pressure>(.*?)<\/pressure>/i',$pogoda,$press); 
        $vivod = "<div style=\"float:left;display:inline;margin-top:5px;\" ;><font size = 3><strong>В Нефтеюганске $temp[1] °</strong></font><img align=top src=$img2[1] /></div><div style=\"display:inline;\"><font size = 2>";
        $dle_api->save_to_cache( weather );
        echo $vivod;
        }
    else {
        echo $vivod;
    }
    ?>
     
  3. zloy_admin

    zloy_admin Разработчик

    Заблокирован
    Регистр.:
    15 авг 2011
    Сообщения:
    184
    Симпатии:
    27
    Нет не работает, есть еще ли какие нить предложения?
     
  4. zzallexx

    zzallexx

    Регистр.:
    11 июн 2008
    Сообщения:
    1.037
    Симпатии:
    702
  5. yavasilek

    yavasilek vasilek_gorbunok

    Регистр.:
    5 окт 2008
    Сообщения:
    1.178
    Симпатии:
    423
    PHP:
    <?php 
    if( ! defined'DATALIFEENGINE' ) ) {
        die( 
    "Hacking attempt!" );
    }
    $vivod $dle_api->load_from_cache 'weather'14400);
    if( !
    $vivod ) {
        
    $pogoda file_get_contents('http://export.yandex.ru/weather/?city=23848'); 
        
    preg_match('/<weather_type>(.*?)</weather_type>/i',$pogoda,$type); 
        
    preg_match('/<dampness>(.*?)</dampness>/i',$pogoda,$vlaga); 
        
    preg_match('/<temperature>(.*?)</temperature>/i',$pogoda,$temp); 
        
    preg_match('/<image2>(.*?)</image2>/i9;,$pogoda,$img2); 
        preg_match('
    /<pressure>(.*?)</pressure>/i,$pogoda,$press); 
        
    $vivod "<div style=\"float:left;display:inline;margin-top:5px;\" ;><font size = 3><strong>В Нефтеюганске $temp[1] °</strong></font><img align=top src=$img2[1] /></div><div style=\"display:inline;\"><font size = 2>";
        
    $dle_api->save_to_cache'weather'$vivod);
        echo 
    $vivod;
        }
    else {
        echo 
    $vivod;
    }
    ?>
     
    zloy_admin нравится это.
  6. zloy_admin

    zloy_admin Разработчик

    Заблокирован
    Регистр.:
    15 авг 2011
    Сообщения:
    184
    Симпатии:
    27
    с этого кода выдает ошибку
    как исправить?
     
  7. yavasilek

    yavasilek vasilek_gorbunok

    Регистр.:
    5 окт 2008
    Сообщения:
    1.178
    Симпатии:
    423
    попробуй так
    PHP:
    <?php  
    if( ! defined'DATALIFEENGINE' ) ) { 
        die( 
    "Hacking attempt!" ); 

    $vivod $dle_api->load_from_cache 'weather'14400); 
    if( !
    $vivod ) { 
        
    $pogoda file_get_contents('http://export.yandex.ru/weather/?city=23848');  
        
    preg_match('/<weather_type>(.*?)</weather_type>/i',$pogoda,$type);  
        
    preg_match('/<dampness>(.*?)</dampness>/i',$pogoda,$vlaga);  
        
    preg_match('/<temperature>(.*?)</temperature>/i',$pogoda,$temp);  
        
    preg_match('/<image2>(.*?)</image2>/i',$pogoda,$img2);  
        
    preg_match('/<pressure>(.*?)</pressure>/i',$pogoda,$press);  
        
    $vivod "<div style=\"float:left;display:inline;margin-top:5px;\" ;><font size = 3><strong>В Нефтеюганске $temp[1] °</strong></font><img align=top src=$img2[1] /></div><div style=\"display:inline;\"><font size = 2>"
        
    $dle_api->save_to_cache'weather'$vivod); 
        echo 
    $vivod
        } 
    else { 
        echo 
    $vivod

    ?>
     
  8. zloy_admin

    zloy_admin Разработчик

    Заблокирован
    Регистр.:
    15 авг 2011
    Сообщения:
    184
    Симпатии:
    27
    обратно ошибка
     
  9. yavasilek

    yavasilek vasilek_gorbunok

    Регистр.:
    5 окт 2008
    Сообщения:
    1.178
    Симпатии:
    423
    PHP:
    <?php   
    if( ! defined'DATALIFEENGINE' ) ) {  
        die( 
    "Hacking attempt!" );  
    }
    include (
    ENGINE_DIR.'/api/api.class.php');
    $vivod $dle_api->load_from_cache 'weather'14400);  
    if( !
    $vivod ) {  
        
    $pogoda file_get_contents('http://export.yandex.ru/weather/?city=23848');   
        
    preg_match('/<weather_type>(.*?)</weather_type>/i',$pogoda,$type);   
        
    preg_match('/<dampness>(.*?)</dampness>/i',$pogoda,$vlaga);   
        
    preg_match('/<temperature>(.*?)</temperature>/i',$pogoda,$temp);   
        
    preg_match('/<image2>(.*?)</image2>/i9',$pogoda,$img2);  
        
    preg_match('/<pressure>(.*?)</pressure>/i',$pogoda,$press);   
        
    $vivod "<div style=\"float:left;display:inline;margin-top:5px;\" ;><font size = 3><strong>В Нефтеюганске $temp[1] °</strong></font><img align=top src=$img2[1] /></div><div style=\"display:inline;\"><font size = 2>";  
        
    $dle_api->save_to_cache'weather'$vivod);  
        echo 
    $vivod;  
        }  
    else {  
        echo 
    $vivod;  
    }  
    ?>
     
Статус темы:
Закрыта.