Avatar billede totalpc Seniormester
22. juni 2005 - 09:55 Der er 8 kommentarer og
1 løsning

Ikon ved ny nyhed

Hej

Jeg har en side hvor der er brugerlogin, så jeg har et unikt id i session("userid"), så jeg kan godt specificere mine brugere. Jeg har så en nyheds sektion hvor man kan skrive kommentarer til den enkelte nyhed. Nu vil jeg så gerne have det sådan når en bruger logger ind så kan denne gå ind i nyheder og så skal der være et ikon/tekst udfor de nyheder brugeren ikke har læst (dvs nye siden sidste login) og der skal også være en teskt/andet ikon udfor de nyheder hvor der er kommentarer som brugeren ikke har læst eller hvor der er kommet nye han ikke har læst (vist det samme hehe)

Jeg kan ik helt gennemskue hvordan jeg gør det smartest.
min nyhedsbase er opbygget :

Base - news.mdb
Tabel - Kommentar
  Kommentar_id - autonummerering
  nyhed_id
  forfatter
  overskrift
osv
Tabel - Nyheder
  news_id - autonummerering
  dato
  Forfatter
osv

Hvordan dælen gør jeg det?
Avatar billede dr_chaos Nybegynder
22. juni 2005 - 09:59 #1
Den bedste måde er nok hvis du har et felt i din bruger tabel hvor du noterer det tidspunkt hvor brugeren sidste har logget på.
Hvis du har det felt så kan du bestemme hvilket ikon som skal vises ved at sammenligne datoen for oprettelsen af nyheden med sidste logind tidspunkt.
Avatar billede totalpc Seniormester
22. juni 2005 - 10:16 #2
Okay...
Du mener hvis jeg nu altid gemmer sidste logon dato i brugertabellen så kan jeg for en given nyhed og kommentar sammenligne dato og dato for nyhed ... men hvad nu hvis man logger ind flere gange samme dag, så vil nyheden stå som ulæst hver gang ik ?
Avatar billede dr_chaos Nybegynder
22. juni 2005 - 10:28 #3
ikke hvis du medtager et tidspunkt.
Avatar billede totalpc Seniormester
22. juni 2005 - 10:41 #4
Heh....nej ok...

kan du give mig et ekspempel på kode til sammenligning af det gemte tidpunkt og dato med nyhedsdato og tidspunkt?

umiddelbart tænkte jeg på noget med at gemme nogle af id'erne i brugertabellen og så tjekke der på hvilke id der lå.....men jeg kan ik se om det er usmart
Avatar billede dr_chaos Nybegynder
22. juni 2005 - 10:53 #5
Når en bruger's logind er godkendt henter du tidspunktet fra det sidste log ind.
Det kan du evt gemme i urlstregen.
Når det er gjort overskriver du sidste log ind tidspunkt med tidspunktet lige nu.
Når du kommer over på siden hvor nyhederne generes(vil gætte på et det er første side efter log ind siden) så laver du en requestquerystring på sidste login dato.

Når du henter nyhederne sammenligner du datoen for oprettelse med sidste logind dato og vise det korrekte ikon alt efter resultatet af sammenligningen.
Avatar billede dr_chaos Nybegynder
22. juni 2005 - 10:59 #6
her er hvordan du converterer en streng til en date:
www.aspdev.org/articles/asp-convert-string-date/+asp+convert+string+date&hl=da&client=firefox-a" target="_blank">http://64.233.183.104/search?q=cache:iXMaufzxS1QJ:www.aspdev.org/articles/asp-convert-string-date/+asp+convert+string+date&hl=da&client=firefox-a

på hver artikel tjekker du bare med
if loginddato<= artikeldato
'gør noget
else
' gør noget
end if

denne if sætning skal du bruge når du udskriver artiklerne.
Avatar billede totalpc Seniormester
22. juni 2005 - 11:02 #7
oki.
Hvad nu hvis man laver en tabel mere og hver gang man så har læst en nyhed gemmes nyhed_id sammen med session("userid") i denne tabel og når man så viser nyhederne tjekker man lige om id'en er repræsenteret i denne tabel? Er det usmart i forhold til dit eksempel ?
Avatar billede dr_chaos Nybegynder
22. juni 2005 - 12:00 #8
det vil give en kæmpe mængde unødvendigt data.
Prøv at forestille dig at du har 1000 brugere de har alle læst 100 nyheder.
Det vil give dig en tabel med 100000 pladser som skal kigges igennem hver gang en bruger logger på.

Det er nok bedre at gemme sidste logind dato i en session som du kan kalde hver gang nyheds siden loades.
Avatar billede totalpc Seniormester
06. januar 2006 - 12:29 #9
jeg har droppet det ligenu da jeg slet ik har tid for tiden :(
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester