Avatar billede kaspermb Nybegynder
11. april 2011 - 18:02 Der er 1 kommentar og
1 løsning

Authenticate logind kode... ?

Jeg har den her logind kode som virker helt som den skal, dog vil jeg gerne kunne lave flere brugere end bare den som ses her under. Har i en ide om hvordan jeg får flettet det ind i min kode.

--- Kode ---
<?php

$adminuser = "brugernavn";
$adminpass = "kode";

if(($_SERVER['PHP_AUTH_USER'] != $adminuser) || ($_SERVER['PHP_AUTH_PW'] != $adminpass)) {
    header('WWW-Authenticate: Basic realm="Log ind"');
    header('HTTP/1.0 401 Unauthorized');
    echo "Der er sket en fejl";
    exit;
}
?>
Avatar billede beetle Nybegynder
11. april 2011 - 19:36 #1
Hvis det bare drejer sig om dig og dine fem venner, så kan du bruge nedenstående script. De finder sig et password, kører det igennem en online md5 kværn () og giver dig md5 resultatet som du skriver ind i casen. End of story.

Hvis du skal ha' flere brugere på, end du gider gøre det med, så skal du nok kigge lidt på mysql og på en side hvor de kan registrere sig selv.

--------------------------------------------------------
<HTML>
[...]
<?php

error_reporting(E_ALL ^ E_NOTICE);
define(COOKIE_TIMEOUT_LENGTH, 30/*days*/ * 24 /*hours*/ * 60 /*min*/ * 60/*sec*/);

if (isset($_POST['logout'])) {
    setcookie('mydomain_username', "", time()-3600);
    setcookie('mydomain_password', "", time()-3600);
    $logged_out = true;
}

if (!$logged_out) {
    if (isset($_POST['login'])) {

        $username = $_POST['username'];
        $password = md5($_POST['password']);
        $set_cookie = $_POST['autologin'];

        unset($_POST['password']);

    } elseif (isset($_COOKIE['mydomain_username']) && isset($_COOKIE['mydomain_password'])) {

        $username = strtolower($_COOKIE['mydomain_username']);
        $password = $_COOKIE['mydomain_password'];
        $set_cookie = true;
    }

    if (isset($username) && isset($password)) {

        // -- Users -- >>>>
        switch (strtolower($username)) {

            case 'bruger_navn@bruger.dk'     :

                if ($password == '2ab97h2g17098f5308a080b677401301') {
                    $authenticated = true;
                }
                break;
               
                [...]

        }
        // <<<< -- Users --

        if ($authenticated && $set_cookie) {
            setcookie('mydomain_username', $username, time() + COOKIE_TIMEOUT_LENGTH);
            setcookie('mydomain_password', $password, time() + COOKIE_TIMEOUT_LENGTH);
        } else {
            setcookie('mydomain_username', "", -1);
            setcookie('mydomain_password', "", -1);
        }
    }
}

if ($authenticated) { ?>
    <div align="center"><h3>Welcome back. Please enjoy yourself</h3></div>
    [...]
<?php } else { ?>
    <div align="center"><h3>You have reached a private resource. Please authenticate yourself</h3></div>
    <p><div align="center">
        <div>&nbsp;<br>
            <form name="login" action="index.php" method="POST">
                <input name="username" type="text" value="user@server.com" size="25" maxlength="45" onFocus="if(this.value=='user@server.com')this.value='';" class="post">&nbsp;
                <input name="password" type="password" value="passwordword" size="17" onFocus="if(this.value=='passwordword')this.value='';" class="post">&nbsp;
                <input name="autologin" type="checkbox" value="1" class="post">Cookie?<p>
                <input type="submit" name="login" value="Log in" style="font-size:10px" class="mainoption">
            </form>

        </div>
    </div>

<?php } ?>
[...]
</HTML>
--------------------------------------------------------
Avatar billede kaspermb Nybegynder
16. maj 2011 - 10:30 #2
Lukker... kunne ikke finde svar
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