Son Konular Modülü Yapmak(Asp)
-
yeni bi forum yazıyorum ama bi yerde takıldım yapmaya çalıştığım şu aktif konular gibi bişey en son yazı gönderilen başlığı en üste taşımak bunu nasıl yapabilirim soruları konular adı altında bi tabloda cevapları ise cevaplar die bi tablodatutyorumşöle bişey yaptım ama
<%
i=1
Set Soon = Server.CreateObject("ADODB.Recordset")
baglac = "Select * from konular order by knid desc"
Soon.Open baglac,dugum,1,3
do while i<6 and not Soon.eof
%>
<%=i%>:)</b><%=soon("knadi")%><br>
<%
Soon.movenext
i=i+1
loop
Soon.close
%>burda sadece konular tablosundaki son 5 veriyi çektirde biliyom yani yeni cevap gelinde cevap gelen başlık en başa alınmıyo bunu nasıl yaparım? kodla felan örnek olarak suna bilcek birileri varmı?
-
kod deilde mantık verim. Mesajların gönderme zamanına göre konu başlıklarını çekebilirsin
-
id e göre değil tarihe göre çek verileri , yer yeni mesaj yazdığında , konu up lanır
-
Hoca, daha dün webviz forum için son konular modülü yazdım. Kendine göre düzelt.
<!-- #include file="common.asp" -->
<!-- #include file="forum/functions/functions_date_time_format.asp" -->
<%
Function BaslikBul(strVeri)
'// Eğer Değişken Boşsa Fonksiyondan Çıkılıyor
If strVeri = "" Or IsNumeric(strVeri) = False Then Exit Function
set baslikRS = Server.CreateObject("Adodb.RecordSet")
baslikRS.OPEN "SELECT * FROM tblTopic WHERE Topic_ID = "& strVeri&" AND Locked = FALSE AND hide = False", strCon, 1,
3
If Not baslikRS.EOF Then
BaslikBul = ""& baslikRS("Subject") &""
End If
baslikRS.Close
Set baslikRS = Nothing
End Function
Function YazanBul(strVeri)
'// Eğer Değişken Boşsa Fonksiyondan Çıkılıyor
If strVeri = "" Or IsNumeric(strVeri) = False Then Exit Function
set yazanRS = Server.CreateObject("Adodb.RecordSet")
yazanRS.OPEN "SELECT * FROM tblAuthor WHERE Author_ID = "& strVeri&"", strCon, 1, 3
If Not yazanRS.EOF Then
YazanBul = "<a href=""forum/member_profile.asp?PF="& yazanRS("Author_ID") &""">"& yazanRS("Username") &"</a>"
End If
yazanRS.Close
Set yazanRS = Nothing
End Function
%>
<table border="0" width="100%">
<tr>
<td> Konu</td>
<td> Yazan</td>
<td> Tarih</td>
</tr>
<%
set RS = Server.CreateObject("Adodb.RecordSet")
RS.OPEN "Select TOP 5 * FROM tblThread WHERE Show_signature = FALSE AND hide = False ORDER BY Message_date DESC", strCon, 1, 3
if RS.eof or RS.bof then
response.write "Henüz konu girilmemiş."
else
do while not RS.eof
strThread_ID = RS("Thread_ID")
strAuthor_ID = RS("Author_ID")
strMessage_date = RS("Message_date")
%>
<tr>
<td> <a href="forum/forum_posts.asp?TID=<%=strThread_ID%>"><%=BaslikBul(strThread_ID)%></a></td>
<td> <%=YazanBul(strAuthor_ID)%></td>
<td> <%=DateFormat(strMessage_date)%></td>
</tr>
<%
RS.movenext
loop
end if
RS.Close
set RS = Nothing
%>
</table>Mesaj tarihine göre en sondan en başa doğru sıraloyor.
