webForumDet fria alternativet

nästa inlägg

ASP

6 svar · 238 visningar · startad av laidback

Medlem sedan maj 2001797 inlägg
Frågan#1

Har ett sorts "dagbokssystem" där inläggen hamnar i en tabell som har fälten
ID (inläggets ID) autonummer
name (användarnamnet) textfält
title (titel på inlägget) textfält
content (själva inlägget) memo
osv osv

När inläggen visas så skulle jag vilja ge alternativet "gå till nästa (eller föregående) inlägg av den här skribenten."

Hur ska detta gå till? Jag måste ju delvis kolla ifall det finns inlägg skrivna efter detta och då ge alternativet "framåt" vilket inte behövs om det är det senaste inlägget som beskådas.

Idéer?

Medlem sedan juni 20003 076 inlägg
#2

Jag rekomendarar att börja med att ha två tabeller, en användartabell och en dagbokstabell.
typ:

usertable:
userid, forname, lastname (ev. fler fält)

memotable:
memoid, userid, heading, notes, regdate (ev. fler fält)

Joina sedan dessa:
strSql = "Select u.userid, u.forname, u.lastname, m.memoid, " & _
"m.userid, m.heading, m.notes, m.regdate " & _
"From usertable u Inner Join memotable m On u.userid = m.userid " & _
"Order By m.regdate Desc ;"

Utifrån detta så får du skapa en "paging funktion" sök på paging så hittar du massor med svar! :)

Medlem sedan maj 2001797 inlägg
#3

Jo, självklart har jag en tabell där användarna finns, och så vidare.
Men i inläggstabellen är det ju även relevant att veta vem som skrev vilket inlägg?

Är det paging det handlar om alltså?

Medlem sedan juni 200032 967 inlägg
#4

laidback skrev:

Jo, självklart har jag en tabell där användarna finns, och så vidare.
Men i inläggstabellen är det ju även relevant att veta vem som skrev vilket inlägg?

Givetvis är det det. Men att lagra användarnamn istället för användarid i inläggstabellen är felaktigt.

Vad skulle hända om någon användare byter namn? I inläggstabellen bör du lagra ett ID som bestämmer vilken användare som gjort inlägget. Du skall icke dubbellagra information.

(Ja, paging är en bra grej. Då får du lätt att anpassa antalet inlägg per sida också, om du skulle vilja det.)

Mvh,

Medlem sedan maj 2001797 inlägg
#5

@nders: att det kanske inte är det ultimata sättet kan jag acceptera, men att det är rent felaktigt?!
Att peka på att det skulle bero på att användaren kanske byter namn låter inte rimligt. (och är framför allt inte applicerbart i detta fall)

Ska se om jag kan få till det med en pagingfunktion då. Tackar... :)

Medlem sedan juni 200032 967 inlägg
#6

Det är felaktigt med hänvisning till de normaliseringsregler som finns.

Om du dubbellagrar data kommer du dels gå miste om en hel del fördelar du har när du använder en relationsdatabas, eftersom du s.a.s. går runt relationerna.

Det finns mycket att läsa om databasnormalisering. Slängde en snabb sökning på google och hittade exempelvis denna artikel.

Mvh,

Medlem sedan juni 20003 076 inlägg
#7

Sen kan ju flera personer ha samma namn, hur ska databasen då veta till vem som texterna tillhör?
Bara ett tips, gör om till id-relation, du kommer att ångra dig sedan annars! :)

260 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)