wacie Skrevet 22. mai 2004 Del Skrevet 22. mai 2004 Hei, lurte på om noen kunne hjelpe meg med å lage en login funksjon. Har prøvd litt selv, men jeg får det ikke helt til :\ Loginfunksjonen skal: Sjekke om brukernavnet($username) og passordet($password) ligger i databasen, og hvis det gjøre det så henter den levlen til brukeren, som er i samme tabell. Og så setter den to sessions med brukernavn, og levlen, så returnerer den "du er nå logget inn ". og hvis den ikke gjør det så skal den returnere "Feil brukernavn eller passord" Håper noen kan hjelpe meg med dette -wacie Lenke til kommentar
bazzo Skrevet 22. mai 2004 Del Skrevet 22. mai 2004 Kansje denne kan hjelpe deg...? Lenke til kommentar
wacie Skrevet 22. mai 2004 Forfatter Del Skrevet 22. mai 2004 ja, fant noe på denne siden lese litt der men hvis det er noen andre som kan bare lage funksjonen får meg så hadde det også vert fint *er litt lat* bruker en mySQL database til å hente passordet og brukernavnet fra. Lenke til kommentar
Cucum(r) Skrevet 22. mai 2004 Del Skrevet 22. mai 2004 Tror ikke du skal gå ut ifra at noen gidder det. Dette er et _HJELPEFORUM_ for php, ikke et _MEKK ET SCRIPT TIL MEG_ forum. Prøv litt selv, også kan du komme hit hvis det er noe du ikke forstår. btw: har skrevet litt om sessions på siden min Lenke til kommentar
wacie Skrevet 22. mai 2004 Forfatter Del Skrevet 22. mai 2004 Jeg har prøvd litt selv, men jeg får den ikke til å sette sessionene riktig : \ Her er det jeg har skrevet: login.php (der sessionene skal bli satt) $username = $_POST["$username"]; $password = $_POST["$password"]; if(!isset($_SESSION["user"])) { if(login($username, $password)); { $_SESSION["user"] = $username; $level = get_level($_SESSION["user"]); $_SESSION["level"] = $level; } } else { echo"Du er allerede logget inn<br>Bruker: ".$_SESSION["user"]."<br>Level: ".$_SESSION["level"]; } Og her er functions.php: function login($username, $password) { $query = "SELECT * FROM users WHERE username = '$username' AND password = '$password'"; $result = mysql_query($query) or die(mysql_error()); $result = mysql_num_rows($result); return $result; } function get_level($username) { $sql="SELECT * FROM users WHERE username = '$username'"; $q=mysql_query($sql); if(mysql_num_rows($q)==0) { echo"Ingen rader funnet"; return false; } else { $data=mysql_fetch_object($q); return $data->level; } } Men jeg får bare opp "Ingen rader funnet" så det ser ikke ut som den klarer å finne hvilken bruker navn den skal hente fra ... Så, jeg har prøvd litt selv Håper noen kan hjelpe meg -wacie Lenke til kommentar
LoS Skrevet 22. mai 2004 Del Skrevet 22. mai 2004 Har du lagt inn info i databasen da? Etter det jeg kan se etter en liten skumlesning så finner den ikke brukernavnet ditt i databasen. Lenke til kommentar
wacie Skrevet 22. mai 2004 Forfatter Del Skrevet 22. mai 2004 Brukernavnet, passordet og alt det som den skal lese fra er i databasen.. -wacie Lenke til kommentar
Pangaea Skrevet 22. mai 2004 Del Skrevet 22. mai 2004 Den if'en vil ikke fungere tror jeg. login() må være true for at if'en skal bli true sånn som det står nå. Om du setter inn "==1" i if'en vil det kanskje fungere. Har ikke sett så veldig nøye på koden... Lenke til kommentar
wacie Skrevet 22. mai 2004 Forfatter Del Skrevet 22. mai 2004 tor ikke der er det som er problemet.. det er nok det at den ikke klarer å hente $username og lete etter den i databasen. -wacie Lenke til kommentar
LoS Skrevet 23. mai 2004 Del Skrevet 23. mai 2004 Får vi se html koden til login siden? Der du skriver brukernavn og passord liksom Lenke til kommentar
wacie Skrevet 23. mai 2004 Forfatter Del Skrevet 23. mai 2004 ja, dere kan få se "Login siden" Login.php (der man skriver passord og brukernavn) <form name="form1" method="post" action="config/login.php"> <table width="226" border="0" cellspacing="1"> <tr> <td width="73">Brukernavn:</td> <td width="146"><input name="username" type="text" id="username"></td> </tr> <tr> <td>Passord:</td> <td><input name="password" type="password" id="password"></td> </tr> <tr> <td> </td> <td><input type="submit" name="Submit" value="Logg inn"></td> </tr> </table> </form> -wacie Lenke til kommentar
LoS Skrevet 23. mai 2004 Del Skrevet 23. mai 2004 Ok, alt ser riktig ut der, men tror det er en feil i login.php (der sessionene skal bli satt) $username = $_POST["username"]; $password = $_POST["password"]; if(!isset($_SESSION["user"])) { if(login($username, $password)); { $_SESSION["user"] = $username; $level = get_level($_SESSION["user"]); $_SESSION["level"] = $level; } } else { echo"Du er allerede logget inn<br>Bruker: ".$_SESSION["user"]."<br>Level: ".$_SESSION["level"]; } funker bedre nå? Lenke til kommentar
wacie Skrevet 23. mai 2004 Forfatter Del Skrevet 23. mai 2004 ja, nå funker den fint tusen takk -wacie 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å