On 2005-02-20, Christoffer <christoffer@buur.info> wrote:
>
http://buur.info/mdk/site/index.phps
>
> Overstående kode skulle gerne virke i loginsystem, men hver gang jeg trykker
> submit reloader den bare siden uden at man bliver logget ind...
> Jeg har prøvet at henvise til en login_tjek.php side, men det gør sådan set
> det samme.. viser intet resultat, kun en blank side.. hvad er der galt??
Det ser ud som om din logik er helt gal. Du henter brugernavnet ud af
databasen med:
select brugernavn from bruger where brugernavn = '$brugernavn'
Og passwordet med:
select password from bruger where password = '$password'
Du beder altså om at få den samme information (brugernavn og password)
som du allerede har liggende i $brugernavn og $password. Så det eneste
disse to ting fortæller dig er, at brugernavnet og passwordet eksisterer
i databasen. Bemærk, at det ikke fortæller dig noget om, hvorvidt de to
hænger sammen. Man kan altså logge ind med en vilkårlig kombination af
brugernavn og password så længe begge eksisterer i databasen. Det du
gerne vil er formentlig noget i retning af:
SELECT count(*)
FROM bruger
WHERE brugernavn = '$brugernavn' AND password = '$password'
Og så checke, om count(*) er lig 1.
Du sætter i øvrigt også cookien 'brugernavn' to gange:
setcookie("brugernavn", "$brugernavn");
setcookie("brugernavn", "$password");
Din kode ville i øvrigt bleve en hel del pænere, hvis du brugte lidt
indentering og flere funktioner.
--
Med venlig hilsen
- Jacob Atzen