Avatar billede mltrfan Nybegynder
07. november 2006 - 14:07 Der er 16 kommentarer og
1 løsning

Login fuktion

Hej Jeg mangler et login stystem hvor der i samme login bosk skal man kunne logge ind som bruger og som admin.
jeg har 2 databasser en med bruger og en med admin brugernavn og kode.
Den skal være med session.
er der nogle der kan hjælpe lille mig
Avatar billede udvikler Nybegynder
07. november 2006 - 14:11 #1
Sagtens, skal dog lige høre nogle ting først:

- Hvilken database bruger du?
- Må det gerne laves i PHP?
- Har du andre tilføjelser?
Avatar billede Slettet bruger
07. november 2006 - 14:16 #2
Men det er nu smartere at have dem i en database, så de er samlet, men at det er et felt der f.eks. hedder 'admin', og den kan så stå til 0/1, alt efter om man er admin.
Avatar billede mltrfan Nybegynder
07. november 2006 - 14:22 #3
hej udvikler
Jeg bruger phpmyadmin og det skal laves i php.
Avatar billede udvikler Nybegynder
07. november 2006 - 14:22 #4
Ja det vil jeg da også mene. Fylder meget mindre plads.
Det kommer så an på om det er en stor side mltrfan har, ellers er det næsten lige meget. :)
Avatar billede mltrfan Nybegynder
07. november 2006 - 14:22 #5
hej coldgate

hvordan mener du jeg er ikke helt med på en database
Avatar billede udvikler Nybegynder
07. november 2006 - 14:22 #6
Perfekt, så kommer jeg med en forklaring om ca 10 min mltrfan
Avatar billede mltrfan Nybegynder
07. november 2006 - 14:24 #7
okay udvikler og på forhånd tak
Avatar billede udvikler Nybegynder
07. november 2006 - 14:33 #8
########################################

<?php
$submit = $_POST['submit'];
$brugernavn = $_POST['brugernavn'];
$kodeord = $_POST['kodeord'];


if ($submit) {

    if ($brugernavn == "admin") {
        $query = mysql_query("SELECT * FROM admindatabasen WHERE kodeord = '$kodeord'") or die(mysql_error());
        while ($row=mysql_fetch_array($query)){
            $_SESSION['admin'] = $row[brugernavn];
            header('Location: adminpanel.php');
        }
    }
    }else{
        $query = mysql_query("SELECT * FROM brugerdatabasen WHERE kodeord = '$kodeord'") or die(mysql_error());
        while ($row=mysql_fetch_array($query)){
            $_SESSION['bruger'] = $row[brugernavn];
            header('Location: brugerpanel.php');
        }
    }
}

?>

<form action="" method="POST">
<input type="text" name="brugernavn">
<input type="password" name="kodeord">
<input type="submit" name="submit" value="login">
</form>


########################################

Der er så lige to ting du skal tilpasse for at det virker hos dig:
1. du skal ændre filnavnet i de to headere jeg har lavet, den ene skal føre til den side man bliver sendt til når man er logget ind som admin og den anden skal føre til siden for almindelige brugere.
2. du skal (muligvis) rette alle navne der har noget med databasen at gøre (jeg ved jo ikke hvad dine felter hedder i databasen)
Avatar billede udvikler Nybegynder
07. november 2006 - 14:34 #9
Og hvorfor er det lige du har lukket spørgsmålet og taget pointene selv når jeg har hjulpet dig?
Avatar billede mltrfan Nybegynder
07. november 2006 - 14:36 #10
det ved jeg ikke kender ikk noget til kan jeg ikk åbne det igen jeg forstå ikk den side her hvordan man godkender
Avatar billede udvikler Nybegynder
07. november 2006 - 14:40 #11
Altså hvis du har fået mit svar til at virke så bør du efter reglerne oprette et nyt spørgsmål med overskriften "point til udvikler" og give 60 point.
I spørgsmålet skal du så skrive et link til dette spørgsmål så folk kan forstå hvorfor du giver mig point..
Sig til hvis du ikke forstår!
Avatar billede mltrfan Nybegynder
07. november 2006 - 14:44 #12
så skulle det være der
Avatar billede mltrfan Nybegynder
07. november 2006 - 14:47 #13
tak for hjælpen
Avatar billede udvikler Nybegynder
07. november 2006 - 14:48 #14
Det var så lidt.
Avatar billede Slettet bruger
07. november 2006 - 23:12 #15
Min idé er at du har en database (en table) der indeholder alle brugerne, med f.eks. følgende informationer pr. bruger:
bruger id
brugernavn
kodeord (krypteret)
email
admin (som default er den 0, men hvis man er admin er den 1)

Så ville min kode se sådan her ud:

<?PHP
session_start();
$login_show = true;

    if(isset($_POST['login_btn'])) {
        $user = mysql_escape_string($_POST['bruger']);
        $pass = md5($_POST['kodeord']);

                if(!empty($user)) {
                    echo "<span style=\"font-size: 12px; font-weight: bold; color: #FF0000;\">Brugernavn mangler</span><br />";
                } elseif(!empty($pass)) {
                    echo "<span style=\"font-size: 12px; font-weight: bold; color: #FF0000;\">Kodeordet mangler</span><br />";
                } else {
                    //mysql connection
                    mysql_connect("localhost", "bruger", "kode");
                    mysql_select_db("database");

                    $sql = "SELECT admin FROM users WHERE username = '".$user."' AND password = '".$pass."'";
                    $query = mysql_query($sql);
                    $row = mysql_fetch_assoc($query);
                    $count = mysql_num_rows($query);
                    if($count == 0) {
                        echo "<span style=\"font-size: 12px; font-weight: bold; color: #FF0000;\">Brugernavn eller kodeord forkert</span><br />";
                    } elseif($count == 1) {
                        $_SESSION['user'] = $user;
                        $_SESSION['pass'] = $pass;
                        $_SESSION['admin'] = $row['admin'];

                        $login_show = false;

                        echo "Velkommen til ".$user;
                    }
                   
                }
    }

if($login_show) {
?>
<form action="" method="post">
<input type="text" name="bruger" value="Brugernavn" onFocus="if(this.value == 'Brugernavn') { this.value = ''; }" /><br />
<input type="password" name="kodeord" value="Kodeord" onFocus="if(this.value == 'Kodeord') { this.value = ''; }" /><br />
<input type="submit" name="login_btn" value="Login" />
</form>
<?PHP
}
?>
Avatar billede Slettet bruger
07. november 2006 - 23:13 #16
Ups den skal lige tjekke om man er admin eller ej.
Avatar billede Slettet bruger
07. november 2006 - 23:14 #17
<?PHP
session_start();
$login_show = true;

    if(isset($_POST['login_btn'])) {
        $user = mysql_escape_string($_POST['bruger']);
        $pass = md5($_POST['kodeord']);

                if(!empty($user)) {
                    echo "<span style=\"font-size: 12px; font-weight: bold; color: #FF0000;\">Brugernavn mangler</span><br />";
                } elseif(!empty($pass)) {
                    echo "<span style=\"font-size: 12px; font-weight: bold; color: #FF0000;\">Kodeordet mangler</span><br />";
                } else {
                    //mysql connection
                    mysql_connect("localhost", "bruger", "kode");
                    mysql_select_db("database");

                    $sql = "SELECT admin FROM users WHERE username = '".$user."' AND password = '".$pass."'";
                    $query = mysql_query($sql);
                    $row = mysql_fetch_assoc($query);
                    $count = mysql_num_rows($query);
                    if($count == 0) {
                        echo "<span style=\"font-size: 12px; font-weight: bold; color: #FF0000;\">Brugernavn eller kodeord forkert</span><br />";
                    } elseif($count == 1) {
                        $_SESSION['user'] = $user;
                        $_SESSION['pass'] = $pass;
                        $_SESSION['admin'] = $row['admin'];

                        $login_show = false;

                        if($_SESSION['admin'] == 1) {
                            echo "Velkommen til ".$user." -> admin";
                        } else {
                            echo "Velkommen til ".$user." -> bruger";
                        }
                    }
                   
                }
    }

if($login_show) {
?>
<form action="" method="post">
<input type="text" name="bruger" value="Brugernavn" onFocus="if(this.value == 'Brugernavn') { this.value = ''; }" /><br />
<input type="password" name="kodeord" value="Kodeord" onFocus="if(this.value == 'Kodeord') { this.value = ''; }" /><br />
<input type="submit" name="login_btn" value="Login" />
</form>
<?PHP
}
?>
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
Kurser inden for grundlæggende programmering

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