Kişisel Ağ Sayfası
www.isa-sari.com

ASP’de Tarih ve Saat İşlemleriyle İlgili Fonksiyonlar

1 Kasım 2008 Cumartesi 22 yorum İsa Sarı

ASP programlama dili ile bir İnternet sayfası tasarlarken, tasarlanan sayfa üzerine günün tarihini ya da o anki saati yazdırmak oldukça basittir: date(), time() ve now(). Bu üç fonksiyon kullanılarak tarih ve saat ile ilgili pek çok bilginin sayfa üzerine yazdırım işlemi gerçekleştirilebilmekte, hatta iki zaman arasındaki farkı hesaplama gibi karmaşık işlemler de kolayca yapılabilmektedir. Her ASP programcısının mutlaka bilmesi gereken bu fonksiyonların detaylarını, kullanım alanlarını ve ilgili örnekleri yazının devamında bulabilirsiniz.

Tarihle İlgili Fonksiyon: date()

<%=date()%> şeklinde kullanılır ve o anki tarihi 30.10.2008 şeklinde ekrana yazdırır. Tarih, doğrudan sunucudan alınır ve sunucunun ayarlarına göre dizilimi değişiklik gösterebilir. Türkiye için gg.aa.yyyy (gün.ay.yıl) şeklinde olan tarih formatı, aa.gg.yyyy şeklinde olabileceği gibi gg/aa/yyyy şeklinde de olabilir.

Bu fonksiyon üzerinde - ve + operatörleri ile pek çok işlem yapılabilmektedir. Örneğin; <%=date()-2%> gibi bir ifâde ile 2 gün önceki tarih, <%=date()+4%> gibi bir ifâde ile de 4 gün sonraki tarih ekrana yazdırılabilir.

Fonksiyon üzerindeki işlemler:

day: <%=day(date)%> Günü yazdırır.
month: <%=month(date)%> Ayı yazdırır.
monthname: <%=monthname(month(date))%> Ay ismini yazdırır.
weekday: <%=weekday(date)%> Kaçıncı gün olduğunu yazdırır.
weekdayname: <%=weekdayname(weekday(date))%> Gün ismi yazdırır.
year: <%=year(date)%> Yılı yazdırır.

Saatle İlgili Fonksiyon: time()

<%=time()%> şeklinde kullanılır ve 12:55:00 şeklinde o anki saati ekrana yazdırır. Tarihte olduğu gibi saat de doğrudan sunucu üzerinden alınır ve fonksiyon için, tarih fonksiyonunda geçerli olan her şey geçerlidir. Türkiye için ss:dd:ss (saat:dakika:saniye) şeklinde yazdırılır.

Fonksiyon üzerindeki işlemler:

hour: <%=hour(time)%> Saati yazdırır.
minute: <%=minute(time)%> Dakikayı yazdırır.
second: <%=second(time)%> Saniyeyi yazdırır.

Tarih ve Saatin Ortak Fonksiyonu: now()

<%=now()%> şeklinde kullanılır ve 30.10.2008 12:55:00 şeklinde hem tarihi hem de saati ekrana yazdırır. Tarih ve saat fonksiyonları için geçerli olan kıstaslar bu fonksiyon için de geçerlidir.

, , , , ,

22
Bir yorum yapabilir veya soru sorabilirsiniz.

avatar
19 Yorum konuları
3 Konu cevapları
1 Takipçiler
 
En çok okunan yorum
En fazla talep alan yorum
16 Yorum yazarları
ali şahanİsa SarıHakan Taşismail gorunk Son yorum yazarları
  Abone ol  
en yeni en eski en beğenilen
Şunları bildir:
ali şahan
ali şahan

Merhaba,

cari=muhasebe_donem_kontrol("ayarlar_cari_donem_1")
mali=year(date)

If cari mali Then

gibi bir kodum var ve çalışmıyor. sanırım mali tarihin kısaltmasını kullandığım için hata veriyor.

cari deki kayıtta sadece yıl var.

cari den gelen kayıt ile bu gün ki yılı karşılaştırmak için ne şekilde yazmam gerekiyor.?

Hakan Taş
Hakan Taş

İsa bey, araştırma sonucu bir sorunum hakkında yorumunuzu gördüm. Tarihimiz 5/8/2016 olarak listelenirken, 05/08/2016 olarak veritabanına kayıt göndermek istiyorum. ( "0" Sıfırlı Şekilde) Bunun için admin kodlarında "tarih bölümünde" nasıl bir ekleme yapmamız gerekiyor. ASP ve MYSQL sistemde. Şimdiden teşekkürler.

ismail gorunk
ismail gorunk

Selamun Aleyküm Şenel Nasılsın.

bir konuda bana yardımcı olur musun?

Şimdi ilanları listeliyorum.
müşteri kendi sayfasına verilmiş ilanları son 60 gün içerisinde verilenleri görmek istiyor.yani listelenmesini istiyor.

fatih can
fatih can

Örnegin bir tur sayfamız var ve bu turları son başvuru tarihi var ben bu tarihi çekerek bugünkü tarihi ile karşılaştırmak ve eğer bügün tarihten geçmiş bir gün ise onayı 0 yapmak istiyorum bunu nasıl yapabilirim

Murat SUCU

If Slq("sqldengelentarih") < Now Then
Response.write("sql tarihi şimdiki tarihi geçmiş")
Sql("Onay") = "1"
else
Sql("Onay") = "0"
Response.redirect("home.asp")
End If

şeklinde yapabilirsiniz

İbrahim ÖZDEMİR

Herkese Selamlar Ben bu asp den çok fazla anlamıyorum ama işte bu sayfada olduğu gibi internet dökümanlarından faydalanarak birşeyler yaptım veri tabanına tarih kaydetmeyi buradan öğrendim şimdi mdb de 01.12.2014 şeklinde görünen tarih sayfa açıldığında 12.01.2014 şeklinde görünüyor 01.12.2014 bu şekilde görünmesi için ne yapabilirim. Yardımcı olursanız çok memnun olurum

mehmet çinar
mehmet çinar

Admin benim asp ile ilgili bir sorum olacak.
DB deki tarih isimli tablodan bilgi çekerken gün-ay-yıl (01.05.2012) görünülüyor.Ben ise gün ismide görüntülensin istiyorum yani şu şekilde = 01.may.2012 çarşamba şeklinde.Bana yardımcı olursanız çok sevinirim denemediğim format ,kod kalmadı.

mefhar çinar
mefhar çinar

Admin benim asp ile ilgili bir sorum olacak.
DB deki tarih isimli tablodan bilgi çekerken gün-ay-yıl (01.05.2012) görünülüyor.Ben ise gün ismide

görüntülensin istiyorum yani şu şekilde = 01.may.2012 çarşamba şeklinde.Bana yardımcı olursanız çok

sevinirim denemediğim format ,kod kalmadı. kullanacağım yerdeki kod şu şekilde:

şeklinde istediğini elde edebilirsin

Ahmet Murat
Ahmet Murat

Hocam saygılarımla. İki tarih arasında kaç gün geçtiğini bulmak istiyorum. A formuna bir tarih ve B formuna bir tarih gireceğim ve sayfa yenilenmeden direkt kaç gün geçtiğini bana söyleyecek. Örnek 01.01.2010 ve 01.01.2012 = 730 gün diyecek.

Harun KARADAĞ

Mustafa K öncelikle söylediğin şey post etmeden yapılsın istiyorsan (sayfa yeniden yüklenmeden) bu iş için saedece asp kodu yetmez. javascript kullanmak zorundasın. sorun değil sayfa yeniden yuklenebilir diyorsan asp ile yapabilirsin. <input type="text" name="tarih" value="<%=request("tarih")%>"> ister form verisi olarak gönder ister querystring ile.buton ile yaparsan butonun onclick yokdamına eklersin. veya butona gerek yok. normal resim veya yaziya link ver. <input type="text" name="tarih" value="<%=request("tarih")%>"><a href="?Tarih=<%=now()%>">Tarihi kutuya yaz</a> bu kadar. ama bu formu sonra başka yere göndermek gibi bir düşüncen varsa zaten kutuya yazmana gerek yok. post edildiği yere dogrudan <%=now()%> yaz yeterli. ana senin esas aradığın bu sanırım.<form name="BildiginForm"><INPUT type="button" name="saatyaz"… Devamı »

Mustafa Ka
Mustafa Ka

(asp) text'in yanında bulunan butona tıklayınca günün tarihini atsın istiyorum.Yardımcı olabilir misiniz?

Ercan Acar
Ercan Acar

Peki iki tarik arasını nasıl yazdırabiliriz

önek: 12 yıl öncesi ile 70 yıl öncesi arasındaki tarihleri açılır menüye yazdırmak istiyoruz. listeye tek tek yazmaktansa 12 ve 70 yılları arasında yıllar açılır menüde çıkacak???

İsa Sarı

W3Schools bu konuda oldukça başarılı ve sitesi içerisinde pek çok bilgi barındırıyor. Bu bilgilendirici yorumlarınız da bu konuda sorun yaşayanlar için çok iyi olacaktır. Teşekkür ederim.

Salih S. DEMİR

Teşekkürler, aslında bunu denedim ama ilk mesajda belirttiğim 0 sorunu çıktı. Bende araştırmaya devam ettim ve http://www.w3schools.com/VBscript/func_datevalue.asp bu linkteki özelliği uyguladım

< %=DateValue(ns("eklenme"))%>

sonuç

08.11.2008

gerçekten bilmediğim ne kadar çok özellik varmış 🙂

İsa Sarı

Rica ederim Salih Bey,
"Date" yazdırmak için şu şekilde bir fonksiyon kurabilirsiniz:
< %=day(ns("eklenme"))%>.< %=month(ns("eklenme"))%>.< %=year(ns("eklenme"))%>

Bu sayede ekrana 10.11.2008 gibi bir tarihi yazdırabilirsiniz, yani "date"i çekmiş olursunuz.

Salih S. DEMİR

Yine rahatsız ediyorum,

Ben veritabanına kayıtlı bir tarihi (gg.aa.yyyy saat:dd:ss olarak kaydediliyor)

< %=month(ns("eklenme"))%> olarak ayı yazdırabiliyorum ama month yerine date yazdığımda olmuyor. Bunu nasıl yazdırabilirim.

Salih S. DEMİR

İlgilendiğiniz için teşekkürler.

İsa Sarı

Salih Bey,
Maalesef bunun bir çözümü yok. Sizin de dediğiniz gibi if'ler ile tanımlamak gerekli. Şu şekilde yapılabilir:
< %
if len(minute(time))=1 then
minute= "0"& minute
end if
%>

Salih S. DEMİR

Ben < %=minute(time)%> olarak kullandığımda dakika eğer 01, 05 gibiyse sadece 5 veya 1 yazıyor. Bunun bir tanımı var mı yoksa If lerle tanımlamak mı lazım?

M. Fikret Ölmez
M. Fikret Ölmez

Teşekkür ederim bilgilendirme için. Aslında kodlar çok karmaşık değil de başta öyle gözüküyor. Bir de datediff ile iki tarih arasındaki fark hesaplanabiliyor, onu eklemek isterim...
< %datediff(year,’2006.5.25′,’2008.6.13′)%> gibi.