og endelig kan du bare sætte en mærke i din brugertabel (fx et ja/nej felt) der opdateres til "ja" og når de logger ud opdateres til "nej"
Synes godt om
Slettet bruger
23. juli 2004 - 21:33#2
keysersoze: Hejsa igen. Jeg har nu kigget på de 2 eksempler du har linket til. Men jeg hælder allermest til den løsning du nævnte til sidst, af flere grunde. Derfor: Hvis du kan vise/poste et komplet eksempel til mig, vil jeg gladeligt tildele dig 200 points.
jamen - der er sådan set ikke mere at fortælle end det. Du laver en kolonne i din tabel der fx hedder "online" og er af typen "ja/nej" - når du bruger logger ind opdaterer du feltet til ja (UPDATE tabel SET online = TRUE WHERE id = xx) og når brugeren logger ud sættes feltet til nej (UPDATE tabel SET online = FALSE WHERE id = xx). feltet id er så den unikke nøgle i din tabel og xx er den pågældende bruger der enten logger ind eller ud
Synes godt om
Slettet bruger
24. juli 2004 - 08:30#4
keysersoze:
Hej igen. Jeg har nu oprettet en kolone der hedder online som er af ja/nej typen.
Men øhhh... resten kan jeg ikke finde ud af. Kan du ikke venligst skrive et komplet eksempel? Jeg er ret ny på dette felt. :-/
Der er 2 ting kan jeg se: 1: En update. 2: en if-else, som aflæser om personerne er online. Hvis personerne ikke er det, skal "rød.jpg" vises, ud for hver person. Men hvis personerne er online, skal "grøn.jpg" vises, ud for hver person. Eller misforstår jeg noget?
Det er ikke så svært, vel? Jeg er ikke så dygtig til det endnu, men det skal nok komme. :-)
<% '--[ Slukker og lukker ]--> Conn.Execute(strSQL) Conn.close Set Conn = Nothing %>
Fejl der vises i browseren:
Fejltype: Der opstod en Microsoft VBScript-kompileringsfejl (0x800A0401) Slut på sætning var ventet test3.asp, line 42, column 13 UPDATE login SET online = TRUE WHERE id = 67 ------------^
Det er det bedste jeg kan få stykket sammen, efter dine anvisninger, keysersoze.
Kan du ikke venligst hjælpe mig med at få det til at virke? Ellers kan jeg jo ikke bruge det til noget som helst.
På forhånd tak.
Synes godt om
Slettet bruger
24. juli 2004 - 19:11#8
Ide: Skal jeg lægge .ASP-dokumentet og databasen til download på mit website? Fordi så er det måske hurtigere og nemmere at reparere for dig?
Det tror jeg lige at jeg gør med det samme. Jeg kommer herind igen om lidt med links til dig. :-)
jeg vil ikke downloade og rette i noget - jeg kan hjælpe herigennem og det er det.
Din update-sætninger skal selvfølgelig være SQL-sætninger - du kan jo ikke bare skrive det på den måde. Dette er en SQL hvormed du danner et recordset;
SQL = "UPDATE login SET online = TRUE WHERE id = 67" Set rs = conn.execute(SQL)
Ydermere skal du selvfølgelig ikke hardcode et id-nummer ind - id-nummeret skal selvfølgelig passe med den som logger ind eller ud
Synes godt om
Slettet bruger
24. juli 2004 - 19:28#10
Nu har jeg uploadet en pakket fil, lige til at downloade, så du nemmere kan fejlfinde scriptet.
Ja, det er gode sider vedr. beskyttelse, du har linket til. :-) Jeg har dog et godt script, som jeg bruger. Tror at jeg engang fik det inde fra Activedeveloper.dk også.
MEN: Som jeg skrev: Jeg er bestemt ikke særligt god til denne del af programmeringen, hvorfor jeg spurgte efter et klokkeklart og utvetydigt eksempel. Please tænk på at jeg ikke er dygtig til dette her.
Derfor: SQL = "UPDATE login SET online = TRUE WHERE id = Michael" Set rs = conn.execute(SQL) Var jo ikke som du først skrev til mig. Jeg sidder her og bruger masser af tid på at teste, og får kun fejlmeddelser hele tiden. Og det sidste du skrev, virker heller ikke. :-(
Nu står der i browseren: Fejltype: Microsoft OLE DB Provider for ODBC Drivers (0x80040E10) [Microsoft][ODBC Microsoft Access-driver] Der er for få parametre. Der var ventet 1. test3.asp, line 40
Jeg har på intet tidspunkt sagt at jeg ville lave det for dig... kun at jeg ville hjælpe.
som tidligere skrevet så skal feltet "id" selvfølgelig eksistere i din tabel login - og hvis id er et tekstfelt og du vil update den række hvor der står "Michael" i id-feltet skal din sql se sådan ud;
SQL = "UPDATE login SET online = TRUE WHERE id = 'Michael'"
Synes godt om
Slettet bruger
24. juli 2004 - 20:33#15
JEPS! Nu virker den del af systemet! Dejligt!!!
Og ud for brugeren Michael er der også krydset til i Ja/Nej-feltet. Det tyder godt!
Nu kommer der blot et nyt problem, som starter på denne line: If rs("online") = TRUE Then Response.Write "<img src=""pics/goen.gif"">" Else Response.Write "<img src=""pics/roed.gif"">" End If %>
Der står i browseren: Fejltype: ADODB.Recordset (0x800A0CC1) Elementet kan ikke findes i den samling, der svarer til det anmodede navn eller ordenstal. test3.asp, line 42
Og ja, jeg ved godt at du på intet tidspunkt sagt at du ville lave det for mig... kun at du ville hjælpe. Og det er det jeg håber på. :-)
Synes godt om
Slettet bruger
24. juli 2004 - 20:36#16
Rettelse: pics/goen.gif er selvfølgelig: pics/groen.gif
en enkelt fejl fra min side - sql'en skal se sådan ud
SQL = "UPDATE login SET online = TRUE WHERE id = Michael" conn.execute(SQL)
rs("online") spørger på et felt i et recordset - dette recordset eksisterer ikke så derfor skal du lave det. fx;
SQL2 = "SELECT * FROM login WHERE id = 'Michael'" Set rs = Conn.Execute(SQL2)
Synes godt om
Ny brugerNybegynder
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.