Avatar billede noob2003 Nybegynder
31. januar 2007 - 19:38 Der er 1 kommentar og
1 løsning

sukos autologin problem

når jeg ber den om at gemme login data får jeg ikke level id men md5 password frem ??

<?php
include("functions.php");
cookie_user();
?>
<html><head><title><?php echo basename($_SERVER["PHP_SELF"]); ?></title>
</head>
<body>
<?php
if(!isset($_SESSION["user"]))
    {
?>
<form action="<?php echo $actionfile; ?>" method="post">
<input type="hidden" name="login" value="true">
Username:<br>
<input type="text" name="username"><br>
Password:<br>
<input type="password" name="password"><br>
<input type="checkbox" name="husk"> husk mig<br>
<input type="submit" value="Log ind">
</form>
<?php

vis_besked();

    }else{
if(isset($_SESSION["user"]["husk"]))
    {
echo"<a href=\"". $actionfile ."?dellogin=true\">Slet autologin</a>";
    }else{
echo"<a href=\"". $actionfile ."?logud=true\">Log ud</a>";
    }

echo "<p>\nHej ". $_SESSION["user"]["username"];
echo"<br>Du er level ". $_SESSION["user"]["level"];
}
?>
<?php
//Læg herunder mærke til at der bruges to " = " tegn.
//Bruger du kun et enkelt, vil session "admin" få tildelt værdien 2
if($_SESSION["user"]["level"] == 1) {
echo"<bR>Denne linie kan kun ses, hvis man har 1 som v&aelig;rdi i databasen for feltet admin!<br>\n";
}
?>
<?php
//Læg herunder mærke til at der bruges to " = " tegn.
//Bruger du kun et enkelt, vil session "admin" få tildelt værdien 2
if($_SESSION["user"]["level"] == 2) {
echo"<bR>Denne linie kan kun ses, hvis man har 2 som v&aelig;rdi i databasen for feltet co-admin!<br>\n";
}
?>
<h2 align="center"><b><?php echo basename($_SERVER["PHP_SELF"]); ?></b></h2>
<a href="side2.php">side 2</a>

</body></html>
Avatar billede noob2003 Nybegynder
31. januar 2007 - 19:43 #1
check.php ser sådan ud

<?php
include("functions.php");

if(isset($_SESSION["redir"])) // $_SESSION["redir"] sender brugeren tilbage
{

if (isset($_POST["login"]))
    {
connect();
$res = mysql_query("SELECT * FROM `". $login_db ."` WHERE `". $user_felt ."` = '". $_POST["username"] ."' AND `". $pass_felt ."` = '". md5($_POST["password"]) ."'") or die (mysql_error());

if (mysql_num_rows($res) == 0)
    {

$_SESSION["besked"] = "Forkert bruger eller password";

    }else{

$p = mysql_fetch_array($res);
$_SESSION["user"]["id"] = session_id();
$_SESSION["user"]["username"] = $p["username"];
$_SESSION["user"]["level"] = $p["level"];

    if(isset($_POST["husk"]))
        {
    setcookie ("username", $_SESSION["user"]["username"], (time()+31536000), "/"); // set cookie 365 dage
    setcookie ("password", md5($_POST["password"]), (time()+31536000), "/");
    $_SESSION["user"]["husk"] = 1;
        }
    }
header("Location:". $_SESSION["redir"] ."");
}

if (isset($_GET["logud"]))
    {
    $_SESSION[] = array();
    $back = $_SESSION["redir"]; //Sletter jo sessions, så der $back skal lige defineres
    session_destroy();
    header("Location:". $back ."");
    }

if (isset($_GET["dellogin"]))
    {
    setcookie ("username", "", (time()-3600), "/");
    setcookie ("password", "", (time()-3600), "/");
    header("Location:". $_SESSION["redir"] ."");
    unset($_SESSION["user"]["husk"]);
    }

}
?>
Avatar billede noob2003 Nybegynder
31. januar 2007 - 19:48 #2
fandt selv fejlen i check.php, den ska se sådan ud

<?php
include("functions.php");

if(isset($_SESSION["redir"])) // $_SESSION["redir"] sender brugeren tilbage
{

if (isset($_POST["login"]))
    {
connect();
$res = mysql_query("SELECT * FROM `". $login_db ."` WHERE `". $user_felt ."` = '". $_POST["username"] ."' AND `". $pass_felt ."` = '". md5($_POST["password"]) ."'") or die (mysql_error());

if (mysql_num_rows($res) == 0)
    {

$_SESSION["besked"] = "Forkert bruger eller password";

    }else{

$p = mysql_fetch_array($res);
$_SESSION["user"]["id"] = session_id();
$_SESSION["user"]["username"] = $p["username"];
$_SESSION["user"]["level"] = $p["level"];

    if(isset($_POST["husk"]))
        {
    setcookie ("username", $_SESSION["user"]["username"], (time()+31536000), "/"); // set cookie 365 dage
    setcookie ("password", md5($_POST["password"]), (time()+31536000), "/");
    setcookie ("username", $_SESSION["user"]["level"], (time()+31536000), "/");
    $_SESSION["user"]["husk"] = 1;
        }
    }
header("Location:". $_SESSION["redir"] ."");
}

if (isset($_GET["logud"]))
    {
    $_SESSION[] = array();
    $back = $_SESSION["redir"]; //Sletter jo sessions, så der $back skal lige defineres
    session_destroy();
    header("Location:". $back ."");
    }

if (isset($_GET["dellogin"]))
    {
    setcookie ("username", "", (time()-3600), "/");
    setcookie ("password", "", (time()-3600), "/");
    setcookie ("level", "", (time()-3600), "/");
    header("Location:". $_SESSION["redir"] ."");
    unset($_SESSION["user"]["husk"]);
    }

}
?>
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