Sono Juventino Skrevet 16. juni 2005 Del Skrevet 16. juni 2005 (endret) Hei. Jeg har lsyt til å lage et loginskript som gir deg mulighet til å passordbeskytte en mappe (brukersider). Vet man kan bruke htaccess til dette, men da har alle samme brukernavn passord. Jeg vil ha et brukersystem med auth der 1=admin, 2=bruker og 3=gjest. Er du 1 har du mulighet til å endre/slette andre brukere. 2 har du mulighet til å gå til mappa. 3 du blir blokka fra å gå inn på mappa. Lurer litt på om det finnes ferdige loginskript som gjør dette? (gjør det sikker.) Sikkerheten er da ikke så viktig. Lønner seg å registrere å bruke to minutt på det, enn å hacke systmet. Er tross alt bare snakk om "brukersider" som vanlig gjester ikke skal ha tilgang til. Dog ikke noe "farlig". Disse filene har jeg planlagt å ha med: /brukersider/masse filer her..bla.bla config.php admin.php auth.php endre.php (med endre/slettefunskjon) loggin.php loggut.php index.php (gjesteside) feil.php (feilmeldig hvis gjest prøver å gå til /mappe) Ønsker å kjøre på mysql. Planlegte tabeller bruker_users bruker_auth bruker_admin bruker_pass bruker_e-mail Noe jeg bør tenke på? Tips? Finnes det noe jeg kan bygge videre på? Kom med det! Takker for svar. Edit: har søkt litt på forumet, men det meste er uferdige skript. Endret 16. juni 2005 av ett Lenke til kommentar
Gilbert Skrevet 16. juni 2005 Del Skrevet 16. juni 2005 Vet man kan bruke htaccess til dette, men da har alle samme brukernavn passord. Nei. Google etter htpasswd, så ser du at hver bruker kan ha sitt eget brukernavn og passord. Lurer litt på om det finnes ferdige loginskript som gjør dette? (gjør det sikker.)Sikkerheten er da ikke så viktig. Lønner seg å registrere å bruke to minutt på det, enn å hacke systmet. Lønner seg sikkert det (det vet du best, du som har laget sidene :-) ) men jeg kan ikke tenke meg at hackere hacker fordi de har lyst på informasjon - mange gjør det nok også av ren spenning. Noe jeg bør tenke på? Tips? Finnes det noe jeg kan bygge videre på?Kom med det! Søk etter login tutorial eller no i forumet, er en guide som svirrer rundt her i blant som er knall Lenke til kommentar
Sono Juventino Skrevet 18. juni 2005 Forfatter Del Skrevet 18. juni 2005 (endret) Har nå fått laget grovarbeidet på dette, men sliter litt på ett punkt. Brukerne må logge på to ganger. Dette er koden i /brukere/index.php (denne er altså passordbeskytet) <?php session_start(); ?> <?php session_start(); $db_user = 'XXXX'; $db_pass = 'XXXX'; $user_name = $_POST['user_name']; $password = $_POST['password']; $connection = mysql_connect('localhost', $db_user, $db_pass) or die(mysql_error()); mysql_select_db('xxxxx, $connection) or die(mysql_error()); //set up the query $query = "SELECT * FROM users WHERE user_name='$user_name' AND password='$password'"; //run the query and get the number of affected rows $result = mysql_query($query, $connection) or die('Feil i query`en.'); $affected_rows = mysql_num_rows($result); //if there's exactly one result, the user is validated. Otherwise, he's invalid if($affected_rows == 0) { print 'Du er innlogget med brukernavn og passord. <br> Dette er sider som bare er tilgjengelige for brukere.'; } else { print 'Du er ikke logget på. Logg på her: <a href="login.php">Login</a>'; } ?> Det er den koden under: //if there's exactly one result, som ikke virker. Denne verdien skal egentlig settes til èn for å automatisk se om brukeren er logget inn, men setter jeg denne til èn vil man kunne logge inn automatisk, uten brukernavn/passord. Skal gi dere linker der dere kan se på det. Den ene er med 0 og den andre er med 1. 0 --> Login 1 --> Login 2 Dere kan også se her som er innlgoinga. Hvis du logger inn med brukernavn/passord så blir du bedt om å logge inn på nytt fordi denne instilingen er satt til 0. Brukernavn: Admin Passord: access Noen som har tips til hvordan jeg kan fikse det til å ikke gå ann å logge seg direkte på uten brukernavn og passord, men at man logges inn hvis man alt har skrevet det inn. Er cookies/ip noe man kan se på? Takker for hjelp. Endret 18. juni 2005 av ett Lenke til kommentar
Sono Juventino Skrevet 19. juni 2005 Forfatter Del Skrevet 19. juni 2005 Ingen som kan finne en løsning? Har tenkt på å se etter ip å skjekke denne opp når man går inn på siden. Vil dette gå? Og evt. hvordan? Lenke til kommentar
Gilbert Skrevet 19. juni 2005 Del Skrevet 19. juni 2005 Tror du bare har rotet litt med feilmeldingene if($affected_rows == "1") { print 'Innlogget'; } else { print 'Ikke innlogget'; } Lenke til kommentar
Torbjørn Skrevet 19. juni 2005 Del Skrevet 19. juni 2005 hvorfor konvertere resultatet av mysql_num_rows til string når det returnerer en integer? Lenke til kommentar
Gilbert Skrevet 19. juni 2005 Del Skrevet 19. juni 2005 Hvis du tenkte på if()-setningen er svaret rett og slett "vane" Lenke til kommentar
Sono Juventino Skrevet 19. juni 2005 Forfatter Del Skrevet 19. juni 2005 Men det er akuratt dette som har gjort at brukere IKKE trenger brukernavn/passord. Da blir meninga borte. Lenke til kommentar
Gilbert Skrevet 19. juni 2005 Del Skrevet 19. juni 2005 Du har ikke en tom rad i sql da? Lenke til kommentar
Sono Juventino Skrevet 19. juni 2005 Forfatter Del Skrevet 19. juni 2005 Kanskje det. Har bare bruker og passord i sql jeg. Hehe. Lenke til kommentar
Sono Juventino Skrevet 20. juni 2005 Forfatter Del Skrevet 20. juni 2005 Er ikke så flink med php/mysql så klarer faktisk ikke finne ut hvor denne komandoen skal kjøre. Den kjører på mysql_num_rows nå, men hva er det? Skal jeg opprette en tabell å skrive infoen over dit? Lenke til kommentar
Torbjørn Skrevet 20. juni 2005 Del Skrevet 20. juni 2005 Hvilken kommando? Hva er det som egentlig er problemet? Lenke til kommentar
Sono Juventino Skrevet 20. juni 2005 Forfatter Del Skrevet 20. juni 2005 Les i tråden da. Det som ikke funker er at brukerne bli bedt på å logge på ènda en gang etter at man har skrevet brukernavn og passord. Først etter at man har skrevet inn passord/brukernavn for andre gang blir man logget inn. Det er koden /if there's exactly one result, the user is validated. Otherwise, he's invalid if($affected_rows == 0) { print 'Du er innlogget med brukernavn og passord. <br> Dette er sider som bare er tilgjengelige for brukere.'; } else { print 'Du er ikke logget på. Logg på her: <a href="login.php">Login</a>'; } Det er noe i veien med. Den infoen skulle ha blit skrevet til en tabell i sql, eller lignende, men dette vet jeg ikke helt hvordan jeg skal gjøre. Grunnen er at det er et ferdiglaget loginskript som er endret og jeg er ganske ny innen php. Derfor ser jeg ikke helt hvordan jeg får løst dette problemet. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå