Avatar billede tobrukDk Novice
02. maj 2012 - 14:56 Der er 4 kommentarer og
1 løsning

Spørgsmål omkring mysqli rank op sætting

Hej

Det er sådan at på min hjememside har jeg noget som hedder rank som gøre det er muligt for brugere at kunne få afgang til siden.

Det er sådan at jeg har valgt at bygge min kode sådan her!

if($stmt = $mysqli->prepare('SELECT NULL FROM `brugere` WHERE `email` = ? & `password` = ?')){
        $stmt->bind_param('ss', $email, $password);
        $email = $_POST['email'];
        $password = sha1($_POST['password']);
        $stmt->execute();
        $stmt->store_result();
        $count = $stmt->num_rows;
        $stmt->close();
        if ($count > 0)
        {
            echo "Finde ikke i databasen";
            $user_found = 1;
        }
    }
    if(!isset($user_found))
    {
        echo 'Godkendt';
    }


men f.eks 10 det er admin og fra 3 til 7 er brugere, og 2 det er blocker brugere og 1 det er godkendt brugere.

Hvordan skal jeg bygge det om til at muligt at brugere med rank 3 kan komme ind på siden.

så er mit spørgsmål om jeg skal trække rank ud eller hvad skal jeg sådan helt gøre for at php / kode hvad rank han/hun er i ?, hvordan synes du/i at jeg skal gør det på ??

jeg er sådan lidt løst omkring hvordan jeg skal gøre det!!


Håber du kan hjælp mig :D
Avatar billede tobrukDk Novice
02. maj 2012 - 14:57 #1
sådan her have jeg gøre det før i tiden før jeg gik over til mysqli?


$_SESSION["logged_in"] = true;
        $_SESSION["user_id"] = $userArray["id"];
        $_SESSION["djnavn"] = $userArray["djnavn"];
        $_SESSION["hemmelig"] = $userArray["hemmelig"];
        $_SESSION["rank"] = $userArray["rank"];
        if($userArray["rank"] == 0)
        {
            header("Location: http://djinfo.dk/blocker.php");
            exit();
        }
        if($userArray["rank"] == 1)
        {
            header("Location: http://djinfo.dk/bruger-forside/");
            exit();
        }
        if ($userArray['rank']==2) {
            header("Location: http://djinfo.dk/admin-forside/");
            exit();
        } 


er det ligne samme måde eller hvad??
Avatar billede inteeeL Nybegynder
04. maj 2012 - 15:15 #2
Selve måden at declarere dine sessioner på er der ingen forskel på ved brug af henholdsvis mysql og mysqli. Men måden, hvorpå du henter dine data fra databasen, er der forskel på. Prøv nedenstående:
if($stmt = $mysqli->prepare("SELECT id, djnavn, hemmelig, rank FROM `users` WHERE `email` = ? AND `password` = ?")){
    $stmt->bind_param('s', $email);
    $email = $_POST['email'];
    $password = sha1($_POST['password']);
    $stmt->execute();
    $stmt->bind_result($brugerID, $djnavn, $hemmelig, $rank);
    $stmt->fetch();
    $count_res = $stmt->num_rows;
    $stmt->close();
   
    if( $count_res > 0) {
        $_SESSION["logged_in"] = true;
        $_SESSION["user_id"] = $brugerID;
        $_SESSION["djnavn"] = $djnavn;
        $_SESSION["hemmelig"] = $hemmelig;
        $_SESSION["rank"] = $rank;
        if($rank == 0)
        {
            header("Location: http://djinfo.dk/blocker.php[/url]");
            exit();
        }
        if($rank == 1)
        {
            header("Location: http://djinfo.dk/bruger-forside/");
            exit();
        }
        if ($rank == 2) {
            header("Location: http://djinfo.dk/admin-forside");
            exit();
        }
    }
}
Avatar billede tobrukDk Novice
04. maj 2012 - 16:23 #3
lyder meget godt :D

men den har problemer medd at ville sende bruger tilbage eller ligne.. :)
Avatar billede inteeeL Nybegynder
08. maj 2012 - 13:54 #4
Svar som følge af svarene i privatbeskederne. :-)
Avatar billede tobrukDk Novice
08. maj 2012 - 18:11 #5
lige svar til de andre også så de kan se det


$stmt->store_result();
    $stmt->bind_result($brugerID, $djnavn, $hemmelig, $rank);
    $stmt->fetch();
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