Avatar billede ferrari_brian Nybegynder
19. december 2005 - 14:45 Der er 16 kommentarer og
1 løsning

1 bruger session login

Hej

Jeg har lavet en side hvor man kan gemme nogle variable, og derpå har jeg lavet et session-login, men jeg tænkte på om man ikke kunne lave sådan at der ikke kan logges ind fra mere end 1 computer? der skal kun være 1 bruger, men jeg ville gerne at det login kun kunne bruges 1 gang, således at der ikke kan være mere end 1 sted der bliver redigeret i de variable ad gangen.

med venlig hilsen
Brian
Avatar billede htmlkoder_dk Nybegynder
19. december 2005 - 17:59 #1
Er det noget i denne stil?

<?
if($_SERVER["REMOTE_ADDR"] == "IP-adresse")
{
echo "Du er nu logget ind med IP-adressen $_SERVER['REMOTE_ADDR']";
}
else
{
echo "Adgang naegtet";
}
?>
Avatar billede ferrari_brian Nybegynder
19. december 2005 - 20:21 #2
hmm... det kan godt være det kan virke det der. men hvor er "IP-adresse" fra ?
Jeg vil jo godt have at det skal bare være sådan der ikke er mere end 1 computer der er logget ind, det må godt være sådan at man kan logge ind fra hjemme og fra arbejde og fra skole osv
Avatar billede johan.o Nybegynder
19. december 2005 - 21:11 #3
Hvis du bruger f.eks. mySQL kan du lave en tabel der indeholder brugere der er logget ind. Hvis din intention er at der kun må være en bruger logget ind ad gangen kan du så gemme denne brugers ip adresse, og login tidspunkt i tabellen og derefter nægte andre brugere adgang så længe den første bruger er aktiv.

Hvergang den bruger der er logget ind ser på en ny side, opdaterer du så tabellen med et nyt timestamp.

Hver gang dit login script aktiveres checker du om timestamp er ældre end f.eks. 10 minutter på den bruger der er logget ind, og hvis det er tilfældet sletter du den 'gamle' bruger og logger den nye ind.

Håber det er forståeligt :)

Mvh. Johan
Avatar billede ferrari_brian Nybegynder
19. december 2005 - 22:55 #4
ok. det lyder som om det er sådan det skal gøres, men ville godt undgå mySQL, idet der kun skal være 1 bruger og ikke andre overhovedet. Derfor er det også vigtigt med det med at man ikke skal kunne være logget på mere end 1 sted
Avatar billede htmlkoder_dk Nybegynder
20. december 2005 - 09:48 #5
"Ip-adresse" er ip-adressen på den bruger, der skal have adgang ;-)

--
www.htmlkoder.dk
Avatar billede johan.o Nybegynder
20. december 2005 - 10:24 #6
Hm, det er lidt svært at lave uden en eller anden form for database operation. Du bliver nød til at lave en eller anden form for 'global' registrering af at en bruger er logget ind, som så kan afskærme andre fra at logge på. Sessions og cookies kan jo ikke bruges da de jo kun sendes/bruges i kommunikationen med den bruger der er logget ind.

Mvh. Johan
Avatar billede htmlkoder_dk Nybegynder
21. december 2005 - 10:00 #7
Johan --> Du kan jo bare gemme IP-adressen i selve scriptet.

--
www.htmlkoder.dk
Avatar billede johan.o Nybegynder
21. december 2005 - 15:25 #8
Hm, det kan jeg ikke lige regne ud hvordan man skulle gøre :)

Det skal jo være muligt at logge på fra alle mulige forskellige ip'er så det er jo ikke muligt at blot kode en fast ip ind i scriptet...eller ??

Mvh. Johan
Avatar billede ferrari_brian Nybegynder
21. december 2005 - 23:34 #9
kunne man ikke bare sætte en slags while(logon) { //der må ikke logges på }
Avatar billede johan.o Nybegynder
21. december 2005 - 23:57 #10
Jo, det kan man, men det kræver jo at variablen logon, gemmes på serveren således at php scriptet ved, når en bruger prøver at logge på, om der allerede er en bruger logget på.

Så variablen logon skal enten gemmes i en database eller i en fil, f.eks. en .txt fil, ellers aner scriptet jo ikke om en anden er logget ind, når en anden bruger kigger forbi.

Mvh. Johan
Avatar billede ferrari_brian Nybegynder
22. december 2005 - 00:04 #11
ja det kan der være noget om, men jeg bruger allerede et par filer til at gemme noget i. som skal kunne læses uden database-adgang, så en ekstra variabel er ikke noget problem.
tror jeg gør det så. tak
Avatar billede johan.o Nybegynder
22. december 2005 - 00:09 #12
Velbekomme :)
Avatar billede ferrari_brian Nybegynder
01. marts 2006 - 14:14 #13
Jeg har ikke arbejdet videre på det ... men læg et svar hvis det er så må i dele pointsene
Avatar billede johan.o Nybegynder
01. marts 2006 - 15:00 #14
Kommer her :)

Mvh. Johan
Avatar billede ferrari_brian Nybegynder
01. marts 2006 - 17:16 #15
jeg stoppede da der kom noget meget vigtigere ... men du får pointsene ...
Avatar billede johan.o Nybegynder
01. marts 2006 - 21:02 #16
Og tak for points :)
Avatar billede ferrari_brian Nybegynder
01. marts 2006 - 21:04 #17
np ...
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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