Avatar billede nezirovski Nybegynder
25. juni 2011 - 19:09 Der er 12 kommentarer

Login system php (kigg på min kode)

Hej.. de her er min kode.
Jeg ved ikke helt hvad jeg laver lige nu..er helt rundtossed :P

Når jeg skriver på browsern admin.php så kommer jeg ikke ind.
men når jeg logger ind så gör jeg ikke heller :S Så jeg ved ikke hvad jeg skal :( Help me.. plz


Login.php


<?php

// Set user and pass
$username = "1";
$password = "1";

if ($_POST['txtUsername'] === $username && $_POST['txtPassword'] === $password)
{
    $_SESSION['admin']=1; //Her sætter jeg en variabel til 1
}

if($_SESSION['admin']===1)
{
            $_SESSION['admin'] = 'ok';
            header("Location:admin.php");
}
?>



admin.php

<?php
session_start();
$_SESSION['admin'] = '';

if ($_SESSION['admin'] != "ok")
{
    echo(" YES SIR YES");

}
else
{
echo("<BR><BR><BR><BR><BR>Login failed please try again!<BR><BR>
    Please try : <a HREF='login.php' TARGET='_parent'>Login</a>");
    exit;   
}

$user = $_SESSION['admin'];
?>
Avatar billede tjens Nybegynder
25. juni 2011 - 20:04 #1
Statement $_SESSION['admin'] = '';   skal vel stå i starten af login.php, og ikke i admin.php?
Avatar billede nezirovski Nybegynder
25. juni 2011 - 20:13 #2
måskee. Har prövet det men nu er den logged in hele tiden :P
Min session virker ikke :S

arhhh..
Avatar billede webweaver Praktikant
25. juni 2011 - 20:17 #3
Den ser mystisk ud koden i hvert fald.

Du giver også din session en værdi "ok".
Men i admin.php checker du så om den er "ok" og hvis den er, er der fejl i login? Du kommer først ind, hvis den IKKE = "ok"?

Og som tjens nævner, giver det ingen mening af have $_SESSION['admin'] = ''; i starten af admin.php, da din if sætning så er overflødig.
Avatar billede webweaver Praktikant
25. juni 2011 - 20:19 #4
Husk session_start(); i alle filer du håndterer SESSIONS i.
Det vil sige både login.php og admin.php
Avatar billede nezirovski Nybegynder
25. juni 2011 - 20:22 #5
=) hehe..
de jeg pröver med at göre er

1: logge ind.
2: hvis jeg skriver admin.php så kan man ikke komme ind
MAN skal logge IND for at komme ind på admin.php :D

=) har prövet alt :(
Avatar billede webweaver Praktikant
25. juni 2011 - 20:26 #6
Det har du næppe :-)

Hvorfor bruger du triple equals istedet for two equals?
(=== og ==) Skift dem til == og se om det gør en forskel.
Avatar billede webweaver Praktikant
25. juni 2011 - 20:29 #7
Prøv i øvrigt også lige at udskrive din SESSION nederst i login.php og se hvad den indeholder efter, at du har forsøgt at logge ind.
Avatar billede nezirovski Nybegynder
25. juni 2011 - 20:30 #8
hvordan 8-)
Avatar billede nezirovski Nybegynder
25. juni 2011 - 20:35 #9
LOL.. nu virker det..
Men nu er spörgsmålet hvordan man laver en logud =) tak for hjälp med ==

har du nogen ide hvordan man laver logud :) hvis ikke så lukker jeg den her =)
Avatar billede nezirovski Nybegynder
25. juni 2011 - 20:44 #10
Tak for din hjälp =)
Avatar billede webweaver Praktikant
25. juni 2011 - 22:42 #11
Ja, du laver en logud ved at bruge session_destroy;

logud.php kunne typisk se sådan her ud:

<?php

session_destroy();
header("location:http://www.hjemmeside.dk");
exit;

?>
Avatar billede Slettet bruger
27. juni 2011 - 14:05 #12
//min login code! hvis det kan være til hjelp

if (($_POST["login"] == "login"))  {
// Login Start start
    if ($_POST["password"] != "" & $_POST["user"] != "") {
        $user = $_POST["user"];
               
                $result = mysql_query("SELECT id,user,password,level FROM jms_user WHERE user = '$user'") or die ("Error: ".mysql_error());
        $db = mysql_fetch_array($result);
            if ($user == $db["user"] && md5($_POST["password"]) == $db["password"]) {
            $_SESSION["login"] = "ok";
            $_SESSION["level"] = $db["level"];
            $_SESSION["user"] = $user;
                        $_SESSION["dialog"] = "open";
        }
    }
  }
// Login end
//-------------
// Logout start
    if ($_POST["login"] == "Log_Out") {
        $_SESSION["login"] = "FALSE";
        unset($_SESSION["level"]);
                $_SESSION["dialog"] = "false";
    }
// Logout end
//--------------------
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