webForumDet fria alternativet

Forum: Nya inlägg och svarsinlägg idag?

ASP

3 svar · 149 visningar · startad av Lukaspojken

Medlem sedan maj 20011 312 inlägg
Frågan#1

Jag tänkte att man på huvudinläggen skulle se en liten bild "svar" eller nåt om nån svaret på inlägget. Jag ska försöka ge ett exempel hur jag menar. Jag skriver ett huvudinlägg idag och eftersom det är nytt idag så får den den nya bilden. Men så går det en dag då försvinner denna bild men skriver någon ett svarsinlägg i mitt inlägg så blir det en bild på huvudinlägget igen men som sagt denna bild försvinner följande dag igen. blabla...:)

Jag tänkte på vad det är för fält i databasen jag behöver för att skapa en sådan sak? Nån med förslag? Ska jag ha en eller två? msgUpdate (typ: datum) och msgUpdateImage (typ: tal för gifbild)?

------------------
Alltid lär man sig något nytt varje dag...

Medlem sedan juni 2001206 inlägg
#2

Läste ditt inlägg igen....fel av mig...

------------------
MVH
Harback

[Redigerat av Harback den 25 jun 2001]

Medlem sedan dec. 20003 563 inlägg
#3

Det beror helt på hur tabellen är designad. Men om metoden ska kunna passa det mesta så kan du lägga till, precis som du sa, ett fält som heter lastupdate. Den uppdaterar du varje gång någon skriver ett svar samt när du skriver huvudinlägget.

<%
'När du skriver ett svar
conn.execute("UPDATE forum_huvudinlägg SET lastupdate = #"&date&"# WHERE id = "&ref_id&"")

'Sen visar du upp det
lastupdat = RS("lastupdate")
if datediff("d", lastupdat, date) = 0 then response.write "<img src=nybild.gif>"

%>

------------------
MVH // Cyprys
Cyprys
Synd att du inte kan köpa en voodoojordglob och sedan snurra på den fort som fan och skrämma skiten ur alla.

[Redigerat av cyprys den 25 jun 2001]

Medlem sedan mars 2001484 inlägg
#4

Om huvudinlägget ska påverkas av när svaren är skrivna behövs en extra kolumn i newThreads-tabellen (för prestandans skull). Kalla den latestReply eller vad du vill. Så fort någon postar ett svar uppdaterar du detta fält. Sedan gör du föjande if-satser:

[b]newThreads:[/b]
sekDygn = 24 * 60 ^ 2 'antal sekunder på ett dygn
IF DateDiff("s", rs("Datumtid"), Now) < sekDygn OR DateDiff("s", rs("latestReply"), Now) < sekDygn THEN
Response.Write "<img src=""newpost.gif"">"
END IF

[b]Replies:[/b]
IF DateDiff("s", rs("Datumtid"), Now) < sekDygn THEN
Response.Write "<img src=""newpost.gif"">"
END IF

Först kollar du om huvudinläggets datumfält ELLER latestReply-fältet (dvs något inlägg i tråden) är nyare än antalet sekunder på ett dygn (möjligt att det är onödigt att jämföra med sekunder, men för säkerhets skull).
I Replies behöver du endast kontrollera Datumtid-fältet.

Om du inte skapar ett nytt fält i newThreads-tabellen behöver du öppna ett recordset för varje kontroll, vilket blir segt.

------------------
/ jeps0

256 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)