ASP ile Eşzamanlı Deprem Bilgileri

WildWolF

New member
Katılım
18 Haz 2005
Mesajlar
285
Reaction score
0
Puanları
0
Hadi kahveleri hazırlayıp başlayalım


İlk önce 'http://www.koeri.boun.edu.tr/scripts/sondepremler.asp adresindeki deprem bilgilerini bilgisayarımıza kaydettikten sonra bilgisayarımıza AspTear adında bir bileşen (dll) yüklememiz gerekli. http://www.alphasierrapapa.com/ComponentCenter/AspTear adresinden bu bileşeni indiriyoruz bilgisayarımıza. Daha sonra asptear.dll dosyamızı Windows dizinimizin altında system32 klasörüne kopyalıyoruz. Bu kopyala ile işlem tamam mı? Hayır henüz değil.Şimdi bu dll dosyamızı bilgisayarımıza tanıtmamız gerekiyor. Msdos a geçerek dll dosyaızın kopyalandığı klasöre geliyoruz. Ve hemen “regsvr32 asptear.dll “ komutunu yazarak dll dosyamızdan sistemimizi haberdar ediyoruz. Benim Windows 2000 kurulu sistemimde aşağıdaki görüntü yakalanıyor bu işlem sırasında.

asptear.jpg

bilgisayarımıza kaydettiğimiz sondepremleri uzantısını “.asp” yaparak ana dizinimize kopyalıyoruz. Yani deprem bilgilerinin yeni adresi http://localhost/sondepremler.asp olmalı.



Şimdi gelelim kodlarımızı yazmaya.
PHP:
<table border="1" bordercolor="Black" cellpadding="0" cellspacing="0">


<tr>

<td colspan="7" align="center">
<font face="Verdana" color="FF6600">En Son olan 10 Deprem bilgisi</font>
</td>

</tr>

<tr>

<td align="center" width="90">

<font face="Verdana" size="2">Tarih</font>

</td>

<td align="center" width="90">

<font face="Verdana" size="2">Saat</font>

</td>

<td align="center" width="70">

<font face="Verdana" size="2">Enlem</font>

</td>

<td align="center" width="70">

<font face="Verdana" size="2">Boylam</font>

</td>

<td align="center" width="70">

<font face="Verdana" size="2">Derinlik</font>

</td>

<td align="center" width="70">

<font face="Verdana" size="2">Magnitud</font>

</td>

<td align="center" width="200">

<font face="Verdana" size="2">Yer</font>

</td>

</tr>

<%

'Bilgilerimizi alacağımız sayfanın adresini URL değişkenine atayalım.

'Kendi bilgisayarımızda denemek için sondepremler.asp dosyasının
'localhost üzerindeki adresi.

URL= "http://localhost/sondepremler.asp"

'İnternetteki güncel bilgiler için adres

'(internette kullanırken aşağıdaki satırın ' (tırnak) işaretini kaldırım

'diğer url satırına bir tırnak işareti koyalım.

'URL= "http://www.koeri.boun.edu.tr/scripts/sondepremler.asp"

'şimdi geçelim tear 'nesnesini kullanmaya.

 

 

'bir hata olursa devam edelim

On Error Resume Next

'Bileşenimizi kullanıma hazırlayalım

Set Veri_al= Server.CreateObject("Softwing.AspTear")

'Bilgileri alacağımız adresi string olarak değiştiriyoruz.

Verimiz = Veri_al.Retrieve(URL,2,"","","")

'Hata Kodumuz "0" dan faklı yani hata var ise.

if Err <> 0 then

 Response.Write "İşlem sırasında bir hata oluştu.<br>
<b>Hata Açıklaması :</b> "& Err.Description

 'eğer hata var ise aşağıda yazdığımız kısımları sayfamıza yazmasın.

 Response.End

end if

 

 

 

 

'Aldığımız güncel veri içerisinden işimize yarayan kısımlar ayıkıklamamız gerekli.

Baslangic = Instr(1,Verimiz,"SONUÇLARIDIR)",1)

'başlangıç noktasından itibaren ne kadar veri gerekliyse alalım.

'SONUÇLARIDIR)ifadesinden sonra 170 karakter ilerlediğimizde
'en son olan depremin tarihine ulaşıyoruz.

Baslangic=Baslangic+170

%>

 

 

 

<%

'10 deprem için döngümüzü kuralım

For i=1 to 10

'başlangıçtan 10 katakter giderek tarihi alalım

deprem_Tarihi = Mid(Verimiz,Baslangic,10)

'saat bilgisi için başlangıç değerimizi 10 arttıralım.

Baslangic=Baslangic+10

'yeni başlangıçtan 9 karakter giderek saati alalım.

'bundan sonrası aynı mantık

'başlangıç değerini arttırarak yeni bilgiye ulaşıyoruz.

'taki yeri almak isteyinceye kadar.

deprem_saati =Mid(Verimiz,Baslangic,9)

Baslangic=Baslangic+10

Enlem=Mid(Verimiz,Baslangic,9)

Baslangic=Baslangic+10

Boylam=Mid(Verimiz,Baslangic,9)

Baslangic=Baslangic+10

Derinlik=Mid(Verimiz,Baslangic,10)

Baslangic=Baslangic+15

Magnitud=Mid(Verimiz,Baslangic,10)

Baslangic=Baslangic+10

'Yer bilgisi biraz karışık gibi görünsede aslında değil

'Magnitud bilgisinden sonra yer bilgisinin başına geldik

'peki ama bunun sonu nerede?

'aslında mantık olarak sonunu chr(13) yada vbcrlf ile satır bilgisine
'ulaşabilirdik ama bende bir sonuç vermedi.

'Bende şöyle düşündüm yer bilgisinden sonra bir sonraki depremin

'tarih bilgisi var ve bu tarihin içerinse "." (nokta) işareti kullanılıyor.

'bu noktayı bulup 5 karakter geri gelirsem yer bilgisinin sonuna ulaşırım.

've öylede oldu.

'yer bilgisinin uzunluğunu bilmediğimden dolayı olayı abartıp
'100 karakter ilerledim.

Yer=Mid(Verimiz,Baslangic,100)

'100 karakterlik bu yer bilgisinin içerisine bir sonraki depremin tarihide
'girmiş olmalı eğer 100 karakterden fazla bir yer yoksa

'(insanın aklına şöle geliyor " çekostavakyalılaştırabildiğimizbiryer " )

'ama bu bile yetmiyor.Çünkü ben olayı abartarak 100 karakter aldım.

'işte bu tarihi çıkartmak için 2002. şeklindeki ilk noktayı buluyoruz.

NoktaBul=Instr(1,Yer,".")

'yerin sonu olarakta bu noktanın 5 karakter öncesini seçiyoruz.

Yer_sonu=NoktaBul-5

'şimdi gerçek yer bilgimizi elde ediyoruz.

Yer=Mid(Yer,1,Yer_sonu)

'bir sonraki deprem için yeni başlangıç noktasını hazırlıyoruz.

Baslangic=Baslangic+Yer_sonu

%>

 

<tr>

<td align="center">

<font size="2" face="Verdana"><%=Deprem_tarihi%></font>

</td>

<td align="center">

<font size="2" face="Verdana"><%=Deprem_saati%></font>

</td>

<td align="center">

<font size="2" face="Verdana"><%=enlem%></font>

</td>

<td align="center">

<font size="2" face="Verdana"><%=boylam%></font>

</td>

<td align="center">

<font size="2" face="Verdana"><%=Derinlik%></font>

</td>

<td align="center">

<font size="2" face="Verdana"><%=Magnitud%></font>

</td>

<td align="Left">

<font size="2" face="Verdana"> <%=yer%></font>

</td>

 

</tr>

 

 

<%

'işte bu kadar gerisi for next döngümüzün işi...

'diğerlerini o bizim için alacak siteden.

'for next devam etsin.

'yallah amca(for döngümüz) başa dön bakalım.

Next

%>

 

</table>
 
Geri
Üst