Sään mukaan muuttuva yläbanneri

Aloittaja weatherc, tiistai, 16.11.2010, 18:32

« edellinen - seuraava »

0 Jäsenet ja 1 Vieras katselee tätä aihetta.

weatherc

On ollut jo jonkin aikaa tuo yläbanneri siten että se muuttuu WD:n antaman sään mukaan. Bannereita on kourallinen josta valita; selkeä, selkeä(yö), puolipilvinen, pilvinen, vesisade, lumisade (näkyy myös räntäsateella), sumu ja ukkonen. Lisää voi tulla jos löydän sopivan kuvan josta tehdä banneri.

Tämä toimii simppelisti siten että WD:n antman säätilanumeron mukaan valitaan banneri. Helppoa kuin heinänteko :)
Ainut johon en ole ollut ihan tyytyväinen on "selkeä yö" jossa ollut kuun kuva. Muutin sen siten että nyt kuun koko muuttuu moonphasen mukaan. Tiedot se nappaa testtag-filusta jossa kuun ikä ja sitten pläjäyttää ruutuun sopivan kuu-kuvan :)
Koska nimi tulee omasta kuvasta niin sen sijanti on aina sama eikä sen kanssa tarvi tapella kuvaa tehdessä vaan se on ilman mitään lisukkeita.

Yö-säätilossa on se ongelma että koska ei ole yöpilvianturia eikä riittävän lähellä Metar-asemaa josta WD sais pilvitiedot öisin (Turku on lähin joka toimii 24h eli matkaa n 50km), niin pilvisyyttä ei öisin saada ja WD puskee silloin aina selkeän säätilaksi. Sateet ja sumut tulevat kylläkin.

ARu

Miten toin WD:n antman säätilanumeron mukaan se numero muutetaan kuvaksi?

weatherc

Tässä koodia:

<?php
$rawfile 
"clientraw.txt";
$rawdata implode(''file($rawfile));
$clientraw explode(' '$rawdata);

$uh load_clicons();
$rawic $clientraw[15];
$top $Icons[$rawic];

function 
load_clicons() {
global 
$Icons;
   
$Icons = array();
   
$Icons[0] = "sunny.jpg";            // imagesunny.visible
   
$Icons[1] = "moon.jpg";          // imageclearnight.visible
   
$Icons[2] = "pcloudy.jpg";    // imagecloudy.visible
   
$Icons[3] = "pcloudy.jpg";    // imagecloudy2.visible
   
$Icons[4] = "night_partly_cloudy.gif";  // imagecloudynight.visible >> partly cloudy
   
$Icons[5] = "sunny.jpg";            // imagedry.visible
   
$Icons[6] = "fog.jpg";                  // imagefog.visible
   
$Icons[7] = "haze.gif";                 // imagehaze.visible
   
$Icons[8] = "rain.jpg";       // imageheavyrain.visible
   
$Icons[9] = "pcloudy.jpg";     // imagemainlyfine.visible
   
$Icons[10] = "mist.gif";                // imagemist.visible
   
$Icons[11] = "fog.jpg";                 // imagenightfog.visible
   
$Icons[12] = "rain.jpg";    // imagenightheavyrain.visible
   
$Icons[13] = "cloudy.jpg";        // imagenightovercast.visible
   
$Icons[14] = "rain.jpg";          // imagenightrain.visible
   
$Icons[15] = "rain.jpg";    // imagenightshowers.visible
   
$Icons[16] = "snow.jpg";          // imagenightsnow.visible
   
$Icons[17] = "thunder.jpg";        // imagenightthunder.visible
   
$Icons[18] = "cloudy.jpg";          // imageovercast.visible
   
$Icons[19] = "pcloudy.jpg";   // imagepartlycloudy.visible
   
$Icons[20] = "rain.jpg";            // imagerain.visible
   
$Icons[21] = "rain.jpg";            // imagerain2.visible
   
$Icons[22] = "rain.jpg";      // imageshowers2.visible
   
$Icons[23] = "snow.jpg";               // imagesleet.visible
   
$Icons[24] = "snow.jpg";               // imagesleetshowers.visible
   
$Icons[25] = "snow.jpg";            // imagesnow.visible
   
$Icons[26] = "snow.jpg";            // imagesnowmelt.visible
   
$Icons[27] = "snow.jpg";            // imagesnowshowers2.visible
   
$Icons[28] = "sunny.jpg";           // imagesunny.visible
   
$Icons[29] = "thunder.jpg";          // imagethundershowers.visible
   
$Icons[30] = "thunder.jpg";          // imagethundershowers2.visible
   
$Icons[31] = "thunder.jpg";          // imagethunderstorms.visible
   
$Icons[32] = "tornado.gif";             // imagetornado.visible
   
$Icons[33] = "windy.gif";               // imagewindy.visible
   
$Icons[34] = "pcloudy.jpg";   // stopped rainning
   
$Icons[35] = "windyrain.gif";   // wind + rain
   
   
return $Icons;
}

?>


Tässä tulee tuloksena $top jossa kuvan nimi, esim. rain.jpg jota sitten voi käyttää miten haluaa esim:

background: url(img/<?php echo $top ?>);

ARu

tyhjällä sivulla saan toimimaan, mutta en div elementin sisällä.

weatherc

Lainaus käyttäjältä: ARu - perjantai, 19.11.2010, 10:16
tyhjällä sivulla saan toimimaan, mutta en div elementin sisällä.

Laitako koodin jolla koitat saada toimimaan niin katsotaan missä mättää  ;)

ARu

että noin pienestä kiinni, nyt toimii KIITOS.
onko mahdollista saada toimimaan include käskyllä tonne div:iin?

weatherc

Lainaaonko mahdollista saada toimimaan include käskyllä tonne div:iin?

Kuvaa ei taida pystyä includellä tekemään mutta voit hyvinkin laittaa nuo php-säätämiset omaat filuun jos haluat ja sitten lukea se includella jossain kohtaa. Esim. mulla on php-filu jossa sekalaista funktiota, asetusta ja komentoa. Tämän lukaisen includella aina sivun alussa ennen <head>iä.


ARu

tein banner.php ja sen includellä sarake2:teen, toimii kiitos.

ARu

Lainaus käyttäjältä: weatherc - tiistai, 16.11.2010, 18:32
On ollut jo jonkin aikaa tuo yläbanneri siten että se muuttuu WD:n antaman sään mukaan. Bannereita on kourallinen josta valita; selkeä, selkeä(yö), puolipilvinen, pilvinen, vesisade, lumisade (näkyy myös räntäsateella), sumu ja ukkonen. Lisää voi tulla jos löydän sopivan kuvan josta tehdä banneri.

Tämä toimii simppelisti siten että WD:n antman säätilanumeron mukaan valitaan banneri. Helppoa kuin heinänteko :)
Ainut johon en ole ollut ihan tyytyväinen on "selkeä yö" jossa ollut kuun kuva. Muutin sen siten että nyt kuun koko muuttuu moonphasen mukaan. Tiedot se nappaa testtag-filusta jossa kuun ikä ja sitten pläjäyttää ruutuun sopivan kuu-kuvan :)
Koska nimi tulee omasta kuvasta niin sen sijanti on aina sama eikä sen kanssa tarvi tapella kuvaa tehdessä vaan se on ilman mitään lisukkeita.


Yö-säätilossa on se ongelma että koska ei ole yöpilvianturia eikä riittävän lähellä Metar-asemaa josta WD sais pilvitiedot öisin (Turku on lähin joka toimii 24h eli matkaa n 50km), niin pilvisyyttä ei öisin saada ja WD puskee silloin aina selkeän säätilaksi. Sateet ja sumut tulevat kylläkin.

tollai kun saiskin toimimaan mutta miten tai millainen koodi että testtag-filusta saa napattua. niin ei tulisi päivällä banneriin kuun kuvaaa.

weatherc

Tässä oma koodi kuun kuvaa varten, $top on se aikasemmin määritelty sään mukaan bannerin nimi:

<?php
include 'testtags.php';
$moonagedays preg_replace('|^Moon age:\s+(\d+)\s.*$|is',"\$1",$moonage);
$topmoon round($moonagedays);
// Nyt meillä on kuun ikä kokonaisena numerona

// Liitetään kuun kuva vain jos banneri on moon.jpg.
if($top == "moon.jpg"){
echo 
'<div style="margin-top:-70px;margin-left:850px;width:50px;height:50px;"><img src="img/moon/moon'.$topmoon.'.gif" alt="Moonphase"/></div>
'
;
}
?>


Henkka