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

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

1 Kasım 2008 Cumartesi 16 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.

, , , , ,

Bir yorum yapabilir veya soru sorabilrsiniz.

16 Yorum "ASP’de Tarih ve Saat İşlemleriyle İlgili Fonksiyonlar"


Misafir
fatih can
2 ay 19 gün önce

Ö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

Misafir
8 ay 24 gün önce

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

Misafir
mehmet çinar
2 yıl 9 ay önce

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ı.

Misafir
mefhar çinar
2 yıl 9 ay önce

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:

Misafir
Ahmet Murat
3 yıl 2 ay önce

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.

Misafir
3 yıl 5 ay önce

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" value="Bas" onclick=" document.BildiginForm.saat.value
='<%=time()%>'" >
<input type="text" name="saat" value=":)" size="20">
</form>

Ayrıca
İsa Arkadaşımız demişki
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
%>
demişsiniz.
bu döngü ile epey kod yazdırmayı gerektirecek
Len ile değerin 2 den küçük
olduğunu kontrol ederek kodu biraz kısaltabiliriz.
ama çok daha iyi bir
çözümü var.
Format .
Format Atın :) .Yok format atmak değildi. Bu tam
kaptırmış kod yazarken zurnanın zırt dediği yerde zırrrr diye bir telefon
çalınca ve karşıdaki kişinin internet bağlantısı gitmiş ve telekom idaresi benim
malımmış gibi "msn ye niye giremiyooomm" diyorsa kodlar kafadan uçup gitmesin
diye telefonu bir an önce kapatmak için söylenen teknik servis çözümüydü.(ohh
olsun :P)
Ama Format yine çözüm olabilir. Nasıl mı ?

saatimiz =
"3:21:6"
response.write FormatDateTime(saatimiz ,3)

bu kadaaacııık

bana
sadece dakika lazım. olmadı bu diyorsanız. onuda yapalım olur. kodumuzda ufak bi
degisiklik daha dogrusu ekleme ile ister saat ister dakika ister sn alabiliriz.

saatimiz
= "3:21:6"
saatimiz= FormatDateTime(saatimiz ,3)
split(saatimiz,":")
response.write
saatimiz(1)

bukadaacıkkk
saati isterseniz saatimiz(0)
saniyeyiisterseniz
saatimiz(1)

suyunu çıkartalım dahada kısaltalım mı :)
<%=cdate("3:2:11")%>

:))))))))
Bu kadar yaw. kasmaya gerek yok. Bu arada ASP ye laf atanlara da kapak olsun.
Hocam
bir kere daha hatırlattı sözünü. "Kötüp Programlama dili, kötü platform, kötü
veritabanı , kötü bilgisayar vs yoktur. sadece yetersiz programcı, sadece
beceriksiz kullanıcı vardır."

Ayrıca tarih ve saat olayı asp de bununla
bitmiyor.
dateadd, datediff konularındada mutlaka araştırma yapın. o zaman
belkide çok uğraştıgınız veya hatalı yaptıgınız tarihler saatler arasında
toplama çıkarma işlemlerini yine böyle bir satır kod ile yapabileceksiniz.

konunun
üzerinden epey zaman geçmiş ama araştıranlar oluyor. ben nerden geldim bu
sayfaya yaw :S . dünya saat farklarını meridyene göre otomatik çevirecek bir
fonksiyon arıyodum 😀 ( en iyisi api yazmaya başlayam. biraz zor bulcam )

Misafir
Mustafa Ka
5 yıl 27 gün önce

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

Misafir
Ercan Acar
5 yıl 8 ay önce

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???

Misafir
6 yıl 9 ay önce

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.

Misafir
6 yıl 9 ay önce

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

sonuç

08.11.2008

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

Misafir
6 yıl 9 ay önce

Rica ederim Salih Bey,
"Date" yazdırmak için şu şekilde bir fonksiyon kurabilirsiniz:
..

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

Misafir
6 yıl 9 ay önce

Yine rahatsız ediyorum,

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

olarak ayı yazdırabiliyorum ama month yerine date yazdığımda olmuyor. Bunu nasıl yazdırabilirim.

Misafir
6 yıl 9 ay önce

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

Misafir
6 yıl 9 ay önce

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
%>

Misafir
6 yıl 9 ay önce

Ben 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?