Avatar billede f-andersen Nybegynder
03. september 2006 - 16:08 Der er 8 kommentarer og
1 løsning

Problemer med login system

Hej

Jeg har lidt problemer med mit login system...

Jeg har følgende kode:
<?php
$brugernavn = $_REQUEST["brugernavn"];
$adgangskode = $_REQUEST["adgangskode"];
$_SEESSION["brugernavn"] = $brugernavn;
include("config.php");
$result = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$brugernavn'");
$antal = mysql_num_rows($result);
if ($antal == 0) {
    echo ("Det indtastede brugernavn eksistere ikke!");
}
while ($row = mysql_fetch_array($result)) {
    $check = $row["adgangskode"];
    $brugernavn = $row["brugernavn"];
}
// Kontrollere password, om passwordet der er indtastet svarer overens med databasen
if (md5($adgangskode) == md5($check)) {
// Inkludere administrations interface
    include("interface.php");
} else {
    echo ("<b><br>Du kunne ikke logge ind, prøv igen!</b>");
}
?>
</body>
</html>

Hvergang jeg prøver at logge ind kommer "Du kunne ikke logge ind, prøv igen!"

Jeg kan ikke lige gennemskue hvad der er galt.
Avatar billede shooka Nybegynder
03. september 2006 - 16:12 #1
Denne linie:

if (md5($adgangskode) == md5($check)) {

Skal være:

if (md5($adgangskode) == $check) {
Avatar billede shooka Nybegynder
03. september 2006 - 16:16 #2
Denne kode skal stå øverst på alle de sider, der kræver, du er logget ind:
<?php session_start(); ?>

Og her er din kode:
<?php
$brugernavn = $_POST["brugernavn"];
$adgangskode = $_POST["adgangskode"];
$_SEESSION["brugernavn"] = $brugernavn;
include("config.php");
$result = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$brugernavn'");
$antal = mysql_num_rows($result);
if ($antal == 0) {
    echo ("Det indtastede brugernavn eksisterer ikke!");
}
while ($row = mysql_fetch_array($result)) {
    $check = $row["adgangskode"];
    $brugernavn = $row["brugernavn"];
}
// Kontrollere password, om passwordet der er indtastet svarer overens med databasen
if (md5($adgangskode) == $check) {
// Inkluderer administrations interface
    include("interface.php");
} else {
    echo "<b><br>Du kunne ikke logge ind, prøv igen!</b>";
}
?>
Avatar billede f-andersen Nybegynder
03. september 2006 - 16:17 #3
Doh.. :)

Takker :)
Avatar billede shooka Nybegynder
03. september 2006 - 16:20 #4
Og et svar :)
Avatar billede hmortensen Nybegynder
03. september 2006 - 16:21 #5
En anden metode:
$result = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$brugernavn' AND adganskode = '".md5($adgangskode)."'");
if (mysql_num_rows($result) == 0)
{
  //Fejl i login
}
else
{
  //Korrekt login
}
Avatar billede shooka Nybegynder
03. september 2006 - 16:23 #6
Ja hmortensen, men det er jo ikke det samme.
Avatar billede hmortensen Nybegynder
03. september 2006 - 16:45 #7
Nej, det er væsentlig kortere, men gør det samme..
Avatar billede shooka Nybegynder
03. september 2006 - 16:56 #8
Det er ikke det samme, men hvis det skal ind i, så:

<?php
include "config.php";
$result = mysql_query("SELECT * FROM brugere WHERE brugernavn = '".$_POST["brugernavn"]."' AND adganskode = '".md5($_POST["adgangskode"])."'");
$antal = mysql_num_rows($result);
if($antal == 1)
{
$row = mysql_fetch_array($result)
$_SEESSION["brugernavn"] = $row["brugernavn"];
echo "Velkommen ".$row["brugernavn"]."! Du er logget ind.";
}
else
{
    echo ("Brugernavnet og adgangskoden passer ikke sammen!");
}
?>
Avatar billede hmortensen Nybegynder
03. september 2006 - 17:06 #9
Ja selvfølgelig mangler der noget..........
Var blot et eksempel på fremgangsmåden.
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