20. november 2005 - 13:31Der er
19 kommentarer og 1 løsning
Tjek om det er admin som logger ind via status i DB
Jeg har indtil videre lave et meget simpelt og usikkert script som tjekker om det er admin som logger ind eller om det er en almindelig bruger. Men nu har jeg så fundet ud af at man kan snyde sig ind i administrator panelet ved at logge ind som almindelig bruger også bare skriver adressen til admin panelet og derved har man adgang til det, det vil jeg gerne ændre ved at indsætte en status i min database, ved ikke helt hvordan det fungere derfor vil jeg gerne have hjælp til at få det til at fungere, er ikke påbegyndt endnu for jeg vil nemlig gerne have et trin for trin herinde :)
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Slettet bruger
20. november 2005 - 13:58#1
jeg bruger selv den måde
if ($s_username && $s_password && $s_sikkerhed == admin) {
Jo jo, bruger sessions og har husket session_start();
her er toppen af mit administrator panel: ---------------------------------------------------------------- <? session_start(); ?>
<h2>Administrator panel</h2>
<?php include "mysql.php";
if(!isset($_SESSION["admin"])) { echo "Du har ikke administrator rettighed"; exit; } //Tjekker om man er logget ind if(!empty($_SESSION['brugernavn'])) { //Laver en query der finder ens brugerid i databasen $query = mysql_query("SELECT * FROM brugere WHERE brugernavn='". $_SESSION['brugernavn'] ."'") or die(mysql_error()); $row = mysql_fetch_assoc($query);
//Man er logget ind, og kan derfor se det hemlige indhold
--------------------------------start-------------------------------- <?php //Helt i starten starter vi sessioner, og forbinder til vores database session_start(); include "mysql.php";
$_SESSION["bruger"] = $row["brugernavn"];
if($row["brugernavn"] == "admin") { $_SESSION["admin"] = 1; } //Tjekker om både brugernavn og kodeord er indtastet. if(empty($_POST['brugernavn']) || empty($_POST['kodeord'])) { //Sender brugeren tilbage til login.php ved brug af en header header("location: login.php"); exit; } //Hvis både brugernavn og kodeord er sat, går vi videre. else { $query = mysql_query("SELECT * FROM brugere WHERE brugernavn='". $_POST['brugernavn'] ."'") or die(mysql_error()); //Tjekker om der er én række i databasen der har det indtasetde brugernavn //Dette gør dog, at flere brugere ikke må have samme brugernavn! if(mysql_num_rows($query) == '1') { //Laver databasekaldet om til et array $row = mysql_fetch_array($query); //Tjekker om kodeordet i databasen er lig med det indtastede kodeord if($row['kodeord'] == $_POST['kodeord']) { //Brugeren har indtastet rigtige oplysninger, nu skal han gemmes i sessioner $_SESSION['brugernavn'] = $_POST['brugernavn']; //Derudover skal han sendes til en hemlig side, hvorpå der bliver tjekket om han er logget ind header("location: logget_ind.php"); } else { //Brugernavnet fandtes ikke i databasen, derfor skal der udskrives en fejl. header("location: login.php"); exit; } } else { //Brugeren har skrevet et forkert brugernavn //Sender brugeren tilbage til login.php ved brug af en header header("location: login.php"); exit; } } ?> --------------------------------slut---------------------------------
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.