24 / 05 / 2009

msn weather ile hava durumu

ekleyen: Emre Çevik kategori: php

2007 yılında yazdığım yazıları incelerken hava durumu çeken bir betikle karşılaştım.

yeni şehir eklemek için http://weather.msn.com adresinden arama yapıyoruz. Ekleyeceğimiz şehir adresinin adresinin TUXX ile başlayan kısmını alıyoruz.

http://weather.msn.com/local.aspx?wealocations=wc:TUXX0014

deneme.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
header("Content-Type: text/html; charset=utf-8");	
 
include "weather.class.php"; 
include "cache.class.php"; 
 
$weather = new Weather();
$array = $weather->GetWeather($_REQUEST['id']);
$array2 = $weather->GetWeather($_REQUEST['id'], true);
 
echo 'Su anda [ $weather->GetWeather($_REQUEST[\'id\']) ]';
 
print_r($array);
 
echo '5 gunluk [ $weather->GetWeather($_REQUEST[\'id\', true]) ]';
 
print_r($array2);
 
?>

http://127.0.0.1/deneme.php?id=TUXX0014 adresini çağırdığımızda ekran çıktısı.

Su anda [ $weather->GetWeather($_REQUEST['id']) ]

Array
(
[0] => Array
(
[degree] => 21°C
[humidity] => 73
[winds] => 2 km/sa
[feels] => 21
[time] => 05:50
[day] => 24.06.2009
[desc] => Açık
[image] => 32.gif
[place] => İstanbul
)

)

5 gunluk [ $weather->GetWeather($_REQUEST['id', true]) ]

Array
(
[0] => Array
(
[degree] => 21°C
[humidity] => 73
[winds] => 2 km/sa
[feels] => 21
[time] => 05:50
[day] => 24.06.2009
[desc] => Açık
[image] => 32.gif
[place] => İstanbul
)

[1] => Array
(
[high] => 32°C
[low] => 23°C
[image] => 34.gif
[chance] => 45
[desc] => Ilık
)

[2] => Array
(
[high] => 29°C
[low] => 22°C
[image] => 34.gif
[chance] => 10
[desc] => Ilık
)

[3] => Array
(
[high] => 25°C
[low] => 20°C
[image] => 11.gif
[chance] => 85
[desc] => ÖÖ Yağmurlu
)

[4] => Array
(
[high] => 28°C
[low] => 22°C
[image] => 30.gif
[chance] => 65
[desc] => Parçalı Bulutlu
)

[5] => Array
(
[high] => 29°C
[low] => 23°C
[image] => 28.gif
[chance] => 50
[desc] => ÖS Bulutlu
)

)

ayrıca sistemin ajax, cache mekanızması ve hava durum ikonlarıda vardır.

dosya : msn weather hava durumu

bir tanede resimli örnek yapalım

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<?php
header("Content-Type: text/html; charset=utf-8");	
 
include "weather.class.php"; 
include "cache.class.php"; 
 
$weather = new Weather();
$array = $weather->GetWeather($_REQUEST['id']);
$array2 = $weather->GetWeather($_REQUEST['id'], true);
 
 
echo '<div><strong>gunluk</strong></div>';
echo '<div>'.$array[0][place].' - '.$array[0][day].' tarihli hava durumu</div>';
echo '<div>sicaklik : '.$array[0][degree].'</div>';
echo '<div>nem : '.$array[0][humidity].'</div>';
echo '<div>ruzgar : '.$array[0][winds].'</div>';
echo '<div>hissedilen : '.$array[0][feels].'</div>';
echo '<div>aciklama : '.$array[0][desc].'</div>';
echo '<div>resim : <img src="images/'.$array[0][image].'"></div>';
 
echo '<div><strong>5 gunluk</strong></div>';
 
$i = 0;
foreach($array2 as $hava)
{
 
	if($i == 0)
	{
		echo '<div>'.$hava[place].' - '.$hava[day].' tarihli hava durumu</div>';
		echo '<div>sicaklik : '.$hava[degree].'</div>';
		echo '<div>nem : '.$hava[humidity].'</div>';
		echo '<div>ruzgar : '.$hava[winds].'</div>';
		echo '<div>hissedilen : '.$hava[feels].'</div>';
		echo '<div>aciklama : '.$hava[desc].'</div>';
		echo '<div>resim : <img src="images/'.$hava[image].'"></div>';
	} else {
 
		$tarihayir = explode('.',$array2[0][day]);
		$gun = $tarihayir[0] + $i;
		$time = date("d.m.Y", mktime(0, 0, 0, $tarihayir[1], $gun, $tarihayir[2]));
 
		echo '<div>'.$array2[0][place].' - '.$time.' tarihli hava durumu</div>';
		echo '<div>en yuksek : '.$hava[high].'</div>';
		echo '<div>en alcak : '.$hava[low].'</div>';
		echo '<div>degisim : % '.$hava[chance].'</div>';
		echo '<div>aciklama : '.$hava[desc].'</div>';
		echo '<div>resim : <img src="images/'.$hava[image].'"></div>';
 
	}
 
	$i = $i + 1;
}
 
?>

iyi kullanımlar.

  • Digg
  • del.icio.us
  • Facebook
  • Google
  • BlinkList
  • blogmarks
  • description
  • Furl
  • Ma.gnolia
  • NewsVine
  • Reddit
  • Technorati

benzer konu bulunamadı


(2 votes, average: 5.00 out of 5)
Loading ... Loading ...

22 yorum

1 | Musa Ekrem Akçaer

08 / 07 / 2009 - 12:43

Avatar

Warning: Cannot modify header information – headers already sent by (output started at /home/wwwnazi/public_html/havadurumu.php:1) in /home/wwwnazi/public_html/havadurumu.php on line 2

Warning: include(weather.class.php) [function.include]: failed to open stream: No such file or directory in /home/wwwnazi/public_html/havadurumu.php on line 4

Warning: include(weather.class.php) [function.include]: failed to open stream: No such file or directory in /home/wwwnazi/public_html/havadurumu.php on line 4

Warning: include() [function.include]: Failed opening ‘weather.class.php’ for inclusion (include_path=’.:/usr/lib/php:/usr/local/lib/php’) in /home/wwwnazi/public_html/havadurumu.php on line 4

Warning: include(cache.class.php) [function.include]: failed to open stream: No such file or directory in /home/wwwnazi/public_html/havadurumu.php on line 5

Warning: include(cache.class.php) [function.include]: failed to open stream: No such file or directory in /home/wwwnazi/public_html/havadurumu.php on line 5

Warning: include() [function.include]: Failed opening ‘cache.class.php’ for inclusion (include_path=’.:/usr/lib/php:/usr/local/lib/php’) in /home/wwwnazi/public_html/havadurumu.php on line 5

Fatal error: Class ‘Weather’ not found in /home/wwwnazi/public_html/havadurumu.php on line 7

şu tarz hatalar alıyorum. acaba yardımcı olur musunuz?

2 | Emre Çevik

08 / 07 / 2009 - 13:06

Avatar

yazının sonundaki

dosya : msn weather hava durumu

dosyalarını indirdiniz mi ?

3 | Musa Ekrem Akçaer

08 / 07 / 2009 - 14:04

Avatar

onu daha sonra fark ettiğim için indirdim ve yükledim. Ancak şuan ki sorun resimli sorgu alamıyorum.

4 | Emre Çevik

08 / 07 / 2009 - 14:08

Avatar

ornek içinde resimli sorgu yok. sadece dizi olarak veriyor sonucu.

bugun yazının devamına resimli sonuc alma ile ilgili ornek eklerim.

5 | Musa Ekrem Akçaer

08 / 07 / 2009 - 14:11

Avatar

yardımlarınız çok teşekkür ederim. bekliyorum. iyi çalışmalar.

6 | Emre Çevik

08 / 07 / 2009 - 15:09

Avatar

örneği yazının sonuna ekledim. kendinize göre değiştirebilirsiniz.

7 | mert

08 / 07 / 2009 - 16:03

Avatar

tesekkurler

8 | Optimus

10 / 07 / 2009 - 03:17

Avatar

teşekkür ederim. Güzel oldu gerçekten. emeğinize sağlık

9 | erkan

08 / 08 / 2009 - 23:22

Avatar

merhaba arkadaşlar,
önelikle güzel paylaşım için teşekür ederim.

resimli örneği çalıştırdığım’da şöyle

Notice: Use of undefined constant place – assumed ‘place’ in C:\wamp\www\havca\deneme.php on line 13

Notice: Use of undefined constant day – assumed ‘day’ in C:\wamp\www\havca\deneme.php on line 13

İstanbul – 08.08.2009 tarihli hava durumu

Notice: Use of undefined constant degree – assumed ‘degree’ in C:\wamp\www\havca\deneme.php on line 14

sicaklik : 25°C

Notice: Use of undefined constant humidity – assumed ‘humidity’ in C:\wamp\www\havca\deneme.php on line 15

nem : 57

sorunla karşılaşıyorum.

10 | Emre Çevik

09 / 08 / 2009 - 01:58

Avatar

error_reporting den noticeleri kapatırsanız sorununuz çözülür veya

$array[0][place] bunu .$array[0]['place'] bu şekilde değiştirmeniz gerekli. tabi bunları sadece place icin degil hepsi icin yapmaniz gerekli yani

$array[0][place] -> $array[0]['place']
$array[0][humidity] -> $array[0]['humidity']

vs vs.

11 | erkan

09 / 08 / 2009 - 03:16

Avatar

sorun belirtttiğiniz yerde imiş.
bu kadar hızlı cevap verdiğiniz ve yardımcı olduğunuz için teşekür ederim.

12 | erkan

09 / 08 / 2009 - 03:18

Avatar

ayrıca bunu ntv.com.tr deki gibi yapabilirmiyiz.veya karşılığını ödemem kaydı ile siz yapabilirmisiniz?

13 | Emre Çevik

09 / 08 / 2009 - 08:29

Avatar

ntvmsnbc derken hangisini istiyorsunuz? haritamı istiyorsunuz ? tam olarak anlayamadım.

14 | erkan

09 / 08 / 2009 - 11:26

Avatar

anasayfa’da head kısmın’da

15 | erkan

09 / 08 / 2009 - 12:54

Avatar

yani sorun şu;
birincisi varsayılan şehir seçme,
ikincisi şehir seçimini yapıyorum ama sayfayı refresh ettiğimde seçmiş olduğum şehir ismi duruyor ama şehir havadurumu kayboluyor.

16 | Emre Çevik

09 / 08 / 2009 - 13:59

Avatar

demek istediğinizi anladım..
jquery ile yapabilirsiniz onu.
benim su anda onu yapabilecek pek zamanım yok.

17 | Emre

17 / 11 / 2009 - 15:04

Avatar

Warning: Invalid argument supplied for foreach() in /home/duzcenet/public_html/hava.php on line 18

Warning: Invalid argument supplied for foreach() in /home/duzcenet/public_html/hava.php on line 40

Warning: Invalid argument supplied for foreach() in /home/duzcenet/public_html/hava.php on line 54

18 | Emre Çevik

17 / 11 / 2009 - 18:40

Avatar

bende herhangi bir sorum gozukmuyor. sizin yaptığınz işlemerde bir sorun olmalı.

19 | Emre

18 / 11 / 2009 - 16:23

Avatar

script ilk attığımda sorunsuz çalışıyor fakat sayfayı kapatıp tekrar açtığımda bu hataları veriyor sorun ne olabilir sizce?

Warning: Invalid argument supplied for foreach() in /home/duzcenet/public_html/hava.php on line 18

Warning: Invalid argument supplied for foreach() in /home/duzcenet/public_html/hava.php on line 40

Warning: Invalid argument supplied for foreach() in /home/duzcenet/public_html/hava.php on line 54

20 | Emre Çevik

18 / 11 / 2009 - 19:41

Avatar

bilemiyorum.. zaten bu alınıp kullanılsın diye yapılmış bişey degil. kodlara bakarak kendinize uygun şeyi yapın diye.. yanı bunu script olsun başkaları kullansın diye yapmadım. sadece neyin nasıl yapıldığının öğrenilmesi için.

21 | Yunus AYDIN

22 / 11 / 2009 - 06:26

Avatar

Paylaşımınız için çok teşekkürler. Gerçekten çok faydalı bir bilgi. Ayrıca ilgilendiğiniz için de çok teşekkür ederim.. Saygılar..

22 | isa

03 / 06 / 2010 - 17:30

Avatar

Ajax çalışmıyor hata veriyor.

yorum yaz

ne yapıyoruz

eğleniyoruz?

anket

design pattern yazılarını nasıl buldunuz?

sonuçlar

Loading ... Loading ...