Asp | Tarihe Göre Haber..
-
Beyler ben haber scriptti editliyorum,şuanda en çok takip edilen haber sitesi haber türkün uyguladığı
günün en çok okunanı haftanın en çok okunanı ve ayın en çok okunanı bölümünü beğeniyorum
şimdi benim aşşağıdaki kodlarla ne şekilde günün & haftanın & ayın en çok okunanlarını listelemek istiorum
kodlar :
<%
Set rsbbs0 = Server.CreateObject("ADODB.Recordset")
sorbbs0 = "Select * from haber where kategori=57 order by hit desc"
rsbbs0.Open sorbbs0,Sur,1,3
%>
<%
i=0
do while i < 1 and not rsbbs0.eof
%>
<span class="style185"><%=rsbbs0("haberbaslik")%> </span><span class="style85"><span class="style89"><span class="style96 style89"><a href="habergoster.asp?id=<%=rsbbs0("id")%>" class="style136">
<% if rsbbs0("flash")=1 then
Response.Write("<img src=images/flash.gif height=8 border=0 align=absmiddle width=12> ")
End If %>
</a></span></span></span>
<table width="193" height="126" border="0" align="center" cellpadding="1" cellspacing="0" class="frevista">
<!--DWLayoutTable-->
<tr>
<td width="86" align="center" valign="middle" bgcolor="#FFFFFF"><div align="center"><a href="habergoster.asp?id=<%=rsbbs0("id")%>"><img src="haberresim/<%=rsbbs0("kaynak")%>" width="80" height="80" hspace="3" border="0" align="top" class="baslik"></a></div></td>
<td width="103" height="82" align="left" valign="top" class=""><div align="right" class="">
<div align="left"><a href="habergoster.asp?id=<%=rsbbs0("id")%>" class="paket_title2">
<% =left((rsbbs0("haberkisa")),70) & "... " %>
</a></div>
</div>
<div align="left"> <a href="habergoster.asp?id=<%=rsbbs0("id")%>" class="paket_title2"></a> <br>
<%
rsbbs0.movenext
i=i+1
Loop
%> -
hocam , şöle yapcan , her haberin eklendiği tarihini kaydetcen db ye sonra tarihi sorgulatacaksın, mesela ,
SQL = "Select * from haber where tarih >= date() order by hit desc"
gibi böyle bugünün en çok okunana haberini çıkartır.
-
Anladım ama günün haberlerini zaten son eklenen leri çekerek alıyorumda
haftanın ve ayın haberlerini nasıl çekicez
7 günün ve 30 günün haberleri çekmem lazım -
onuda sanırım datediff ile filan yapıcan. onu tam bilmiyorum ama şöle bişiy sanırsam
zaman = rs("tarih")
if datediff("n", zaman, date()) <= 7 then
end ifbu bir haftalık
datediff("n", zaman, date()) <= 30 then
buda son 1 ay lık olması lazım ama tam emin de değilim :| çalışabilme olabilitesi yüksek :|
-
hacı ben yazıım sen kafana göre editlede datediff le olmaz
bihaftaonce = dateadd("d",-7,date())
biayonce = dateadd("d",-30,date())
Select * From gehbulubu Where zaman <= biayonce AND zaman => date()
gibi olcak
yalan yanlış olabilir kusura bak :D
-
Hoca dateadd ile olan şey datediff ile niye olmuyo onu anlamadım :D
sql = "Select * From gehbulubu Where datediff(d, zaman, now() ya da getdate()) < 30"
-
alp hocam şu kodlara yerleştirip versen tam olucak çünkü kategori ye göre ve hitten çekmek istiyorum
Yani örnek olarak kategori 57 nin son 30 günde eklenen haberler arasında en hit lerini çekmek istiyorum
<%
Set rsbbs0 = Server.CreateObject("ADODB.Recordset")
sorbbs0 = "Select * from haber where kategori=57 order by hit desc"
rsbbs0.Open sorbbs0,Sur,1,3
%>kodları yerleştirirseniz anlaşılır biçimde makbule geçer ..
-
alp bunu yazdı:
-----------------------------Hoca dateadd ile olan şey datediff ile niye olmuyo onu anlamadım :D
sql = "Select * From gehbulubu Where datediff(d, zaman, now() ya da getdate()) < 30"
-----------------------------DateAdd ile DateDiff farklı girdi ve cıktıları var. DateAdd ile sadece gun, ay yada yılı arttırırsın ,
DateDiff ise boolean degeri donderir. İkisini biribirine uygun ayarlama yapman gerekir.. Ama DateAdd ile DateDiff i neden bi arada kullanıcaan??
-
Su sql i kullan ;
Oncelikle haber.tarihim diye bi colunm var diye varsaıyorum.
Select * from haber where kategori=57 and tarihim>DATEADD(day, -30,getdate()) order by tarihim desc
-
sorbbs0 = "Select * from haber where kategori=57 order by hit desc"
şunu
sorbbs0 = "Select * from haber where kategori=57 and DateDiff('d',tarih, Now)>29 order by hit desc"
şu şekil deiştir. ordaki 29 1 ayı , 7 olarak deiştirirsen 1 haftayı karşılar hit e görede hafta veya ayın en yükseğini çekmiş olursun tabi
tablonda tarih diye alan olması lazım istersen hemen örnek yapayım
-
Eyw Hoca Tamamdır
