Aspde İki Tarih Arasındaki Fark
-
<%session("zaman1")=dateadd("n",-5,now())
session("zaman2")=DateAdd("n", 0, Now())
%>
<br>
<%response.write (session("zaman2")-session("zaman1"))%><br>yapıyorum sonucun normalde 5 çıkması gerekiyor fakat ne çıkıyor ?
3,47222221898846E-03bunu nasıl halledebilirim ?
-
şu şekilde hallettim
<%session("zaman1")=Minute(Now)-5
session("zaman2")=Minute(Now)%>
<%response.write (session("zaman2")-session("zaman1"))%>
edit:çözemedim diğer türlü olanı lazım
2.cil edit
<%session("zaman1")=DateAdd("n", 0, Now())+5
session("zaman2")=DateAdd("n", 0, Now())
%>
<%response.write (session("zaman1")-session("zaman2"))%>yazdım oldu web sitesinde
Microsoft VBScript runtime error '800a000d'
Type mismatch: '[string: "8/5/2008 7:41:37 PM"]'
/online.asp, line 22
hatası veriyor alla alla..
=uye("online")-DateAdd("n",0, Now())
kullandım..
-
hocam datediff diye bişe var :D niye kasıyon ayrıca zaman değişkenleri arasında zaman1 - zaman2 diye işlem yapılmaz.. zaten asp'de "zaman"lardan çektiğim kadar hiç bi şeyden çekmedim :D
neyse aşağıdaki giib yaparsan olur:a = datediff("s", zaman_degiskeni, now())
bu sana now() ile zaman_degiskeni arasındaki saniye farkını verir. "s" yerine aşağıdaki değişkenleri kafana göre kullan
s -> saniye
n -> dakika
h -> saat
d -> gün
m -> ay
ww -> hafta
yyyy -> yıl -
abi son giriş yaptığı süreyle şimdiki zmana araındaki farkı bulucam yani
sitede son gelişinden x dakika geçmiş
demesi gerekiyor
uye("online") buraya zamanı verdim
simdiki zamandan ıuyenin online olduğu zamanı çıkarınca iş bitecek zaten yanlışta yapıyormuşum kafam teklemeye başladı bu saatte :D
cidden çok garip zaman yaw öğrensem kolaylaşırda..
-
Function TarihGoster(gelen)
sGun = DateDiff("d", gelen, Date)
sAy = DateDiff("m", gelen, Date)
sYil = DateDiff("yyyy", gelen, Date)
sSaat = DateDiff("h", gelen, now())
sDakika = DateDiff("n", gelen, now())
IF sYil = 0 THEN
IF sAy = 0 THEN
IF sGun = 0 THEN
IF sSaat = 0 THEN
TarihGoster = sDakika & " Dakika önce"
ELSE
IF sDakika > 60 THEN
TarihGoster = sSaat & " Saat, " & sDakika MOD 60 & " Dakika önce"
ELSE
TarihGoster = sDakika & " Dakika önce"
END IF
END IF
ELSE
IF sGun-1 > 0 THEN
TarihGoster = sGun-1 & " Gün, " & sSaat MOD 24 & " Saat önce"
ELSE
TarihGoster = sSaat & " Saat, " & sDakika MOD 60 & " Dakika önce"
END IF
END IF
ELSE
IF sAy-1 = 0 THEN
TarihGoster = sGun & " Gün, " & sSaat MOD 24 & " Saat önce"
ELSE
TarihGoster = sAy-1 & " Ay, " & sGun MOD 30 & " Gün önce"
END IF
END IF
ELSE
IF sYil-1 = 0 THEN
TarihGoster = sAy & " Ay, " & sGun MOD 30 & " Gün önce"
ELSE
TarihGoster = sYil-1 & " Yıl, " & sAy MOD 12 & " Ay önce"
END IF
END IF
END Functionresponse.write "Son girişiniz: "& tarihgoster(uye("online"))
dakka,saat,gün,ay,yıl gösterimi şeklinde ekrana basıyor
-
üye("online") varya her girişte bunu güncellettiriosun zaten
ancak az önce yazdığım koddan sonra güncelleme yaptırki önceki veriyi almış olsun boşa session cookie ek hücre falan filan uraşma tek veriyle biter iş
yukardaki koda rağmen hata alıosan session.lcid değeri belirlemeyi unutma
-
hocam uye("online") her girişte now() ile güncelleniyo, orası tamam sen şimdiki zamanla son girişi arasındaki dakika farkını bulup yazdırmak istiyosun..
o farkı nereyi yazdıracaksan
a = datediff("n", uye("online"), now())
response.write "Son gelişinizden bu yana " & a & " dakika geçmiş.."
bunu yaptığın zaman farkı yazdırırsın.. -
alp in kodları ile oldu saolun millet
edit:
başka birşey oldu
<%Do While not uye.Eof
a = datediff("n", uye("online"), now())%>
<tr>
<td width="33%"<%=hucre0%>><font class="y1"> <%response.write "enson "&a&" dakika önce işlem gerçekleştirdi"%></font></td>
</tr>
<%uye.Movenext
Loop%>
yaptım fakat"enson 88 dakika önce işlem gerçekleştirdi"
diyor bunu göstermemesi gerekiyordu :S
bağlantımda
<%zaman=DateAdd("n",-5, Now())
Set uye = Server.CreateObjecT("ADODB.RecordSet")
sqlzaman = "SELECT * FROM uyeler WHERE online>=#"&zaman&"#"
uye.open sqlzaman,baglan,3,3
%> -
yukarıda yapmak istediğin ne? Neyi göstermek istiyosun?
-
zumsuk bunu yazdı:
-----------------------------abi son giriş yaptığı süreyle şimdiki zmana araındaki farkı bulucam yani
sitede son gelişinden x dakika geçmiş
demesi gerekiyor
uye("online") buraya zamanı verdim
simdiki zamandan ıuyenin online olduğu zamanı çıkarınca iş bitecek zaten yanlışta yapıyormuşum kafam teklemeye başladı bu saatte :D
cidden çok garip zaman yaw öğrensem kolaylaşırda..
-----------------------------hoca sen o saatte hala onlinemiydin ya ben 2 de pes ettim :D aynen katılıyorum asp de tarih saat işlemlerinden çektiğim kadar hiçbişeyden çekmedim :|
-
abi kod aşşağıdaki gibi mantıken 5 dakikadır sitede olanı göstermesi lazım fakat
zumsuk En son 0 dakika önce işlem gerçekleştirdi Anasayfada
pessimist En son 529 dakika önce işlem gerçekleştirdi Anasayfada
SyspioniC En son 473 dakika önce işlem gerçekleştirdi Anasayfada
impossible En son 720 dakika önce işlem gerçekleştirdi Anasayfada
dyrnade En son 681 dakika önce işlem gerçekleştirdi 1böyle gösteriyor 529, 473 v.s. :S sql kodunu falan herşeyi veriyuorum
<%sure=DateAdd("n",-5, Now())
Set uye = Server.CreateObjecT("ADODB.RecordSet")
sql = "SELECT * FROM uyeler WHERE online>=#"&sure&"#"
uye.open sql,vtb,3,3
%>
<%Do While not uye.Eof
a = datediff("n", uye("online"), now())%>
<tr>
<td width="33%"<%=hucre0%>><img src="img/icon/online.png"><a href='uyeler.asp?uye=gor&id=<%=uye("id")%>' class="renk"><%=uye("nick")%></font></td>
<td width="33%"<%=hucre0%>><font class="y1"> <%response.write "En son "&a&" dakika önce işlem gerçekleştirdi"%></font></td>
<td width="34%"<%=hucre0%>><font class="y1"> <%=uye("baks")%></font></td>
</tr>
<%uye.Movenext
Loop%>edit:
abi cidden şu süre olayları çok gıcık ya :-/
