Beethoven Skrevet 17. desember 2005 Del Skrevet 17. desember 2005 Hei. Driver å øver på å bruke klasser, kanskje det også kunne gjøre arbeidet mitt lettere tenkte jeg. Men... det er vist mer bare problemer: Her er klassen: <?php class MySQL_users { function Auth($mode, $username = NULL, $password = NULL) { if ($mode = 0) { $password = sha1($password); $query = mysql_query("SELECT * FROM `" . TABLES . "users` WHERE `username` = '$username' AND `password` = '$password'"); if (mysql_num_rows($query) == 1) return TRUE; else return FALSE; } else { if ($_SESSION['session_ip'] == $_SERVER['REMOTE_ADDR']) { $query = mysql_query("SELECT * FROM `" . TABLES . "users` WHERE `username` = '" . $_SESSION['session_username'] . "' AND `password` = '" . $_SESSION['session_password'] . "' AND `userlevel` = '" . $_SESSION['session_rank'] . "'"); if (mysql_num_rows($query) == 1) return TRUE; else return FALSE; } else return FALSE; } } // Auth() } ?> Og når jeg f. eks skal sjekke om brukernavn og passord stemmer for at jeg skal kunne logga ham inn så er jo det seff. feil. Slik kjører jeg funksjonen: if ($MySQL_users->Auth(0, $username, $password)) { Jeg får bare beskjed om at passord eller brukernavn er feil. Jeg connecta til MySQL og jeg VET at det stemmer med det som står i databasen. Noen som ser at det er noe som ikke helt stemmer, hva gjør jeg galt? Takk. Lenke til kommentar
Mobsan Skrevet 17. desember 2005 Del Skrevet 17. desember 2005 Variabler følger ikke med inn i functions fra utsiden, så du må sende med $db_connection inn til function'n slik at den vet hvilken connection den skal bruke... hvis du fattet det? Lenke til kommentar
Beethoven Skrevet 17. desember 2005 Forfatter Del Skrevet 17. desember 2005 (endret) Det er ser ikke ut til å være svaret... Får ingen feil. Men jeg får ikke logga inn. Endret 17. desember 2005 av Beethoven Lenke til kommentar
kakkle Skrevet 17. desember 2005 Del Skrevet 17. desember 2005 (endret) Du må bruke 2 likhetstegn i den første if setningen (if($mode == 0)), ihvertfall... Også lurer jeg litt på den TABLES . Hvor kommer den fra ? Har du definert den en plass ? EDIT: Og som alltid, test om spørringen gikk ok, hvis ikke, skriv ut query, samt feilmelding fra mysql. Endret 17. desember 2005 av kakkle Lenke til kommentar
knuto Skrevet 19. desember 2005 Del Skrevet 19. desember 2005 Ingen ting er betre enn PEAR sin klasse for adgangskontroll 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å