Jeg søger et logind system uden DB, hvor man kan sende brugerene til deres egne filer. f.eks bruger1 bliver sendt til index1 og bruger2 bliver sendt til index2.
Login systemer uden DB er noget, man kan bruge til en bruger eller to. Til større systemer er det noget rod. At sende brugeren til hans egne filer, er jo i øvrigt det aller mindste i et login system. Det vigtigste er, at brugeren hele tiden kontrolleres og at man sikrer sig, han har tilladelse til at se de filer, han requester ... ellers er der nada sikkerhed i 'systemet' :)
<?PHP if(isset($_POST['login'])) { //Hvis knappen er sat if(($_POST['user'] == "abc") && ($_POST['pass'] == "123")) { //Hvis brugernavn er = "abc" og kode = "123" header("LOCATION: index1.htm"); //Siden bruger 1 skal sendes til
} elseif(($_POST['user'] == "def") && ($_POST['pass'] == "456")) { //Hvis brugernavn er = "def" og kode = "456" header("LOCATION: index2.htm"); //Siden bruger 2 skal sendes til
} else { //Hvis brugernavn ikke findes echo "Dit brugernavn og/el. kodeord er ikke korret.<br />Prøv igen"; } } ?>
Synes godt om
Slettet bruger
23. maj 2005 - 20:43#4
Hvis du nu også vil have at man ikke kan se de side de bliver sendt til så:
ser login kode sådan ud (filerne der viderstilles til skal så være php:
<?PHP if(isset($_POST['login'])) { //Hvis knappen er sat if(($_POST['user'] == "abc") && ($_POST['pass'] == "123")) { //Hvis brugernavn er = "abc" og kode = "123" header("LOCATION: index1.php"); //Siden bruger 1 skal sendes til
} elseif(($_POST['user'] == "def") && ($_POST['pass'] == "456")) { //Hvis brugernavn er = "def" og kode = "456" header("LOCATION: index2.php"); //Siden bruger 2 skal sendes til
} else { //Hvis brugernavn ikke findes echo "Dit brugernavn og/el. kodeord er ikke korret.<br />Prøv igen"; } }
Synes godt om
Slettet bruger
23. maj 2005 - 20:44#5
ups mangler lige en koden ?>
til sidst i
Synes godt om
Slettet bruger
23. maj 2005 - 20:44#6
**** FORKERT ^^ *****
ups mangler lige en
?>
til sidst i koden
Synes godt om
Slettet bruger
23. maj 2005 - 20:47#7
SÅdan ser undersiderne så ud:
<?PHP session_start(); if($_SESSION['login'] !== "OK") { header("LOCATION: login.php"); // din login side } else { ?>
DIT SCRIPT KODE HER
<? } ?>
Har lige sendt i login script at jeg mangler noget så her er den så igen igen igen:
<?PHP if(isset($_POST['login'])) { //Hvis knappen er sat if(($_POST['user'] == "abc") && ($_POST['pass'] == "123")) { //Hvis brugernavn er = "abc" og kode = "123" $_SESSION['login'] == "OK"; header("LOCATION: index1.php"); //Siden bruger 1 skal sendes til
} elseif(($_POST['user'] == "def") && ($_POST['pass'] == "456")) { //Hvis brugernavn er = "def" og kode = "456" $_SESSION['login'] == "OK"; header("LOCATION: index2.php"); //Siden bruger 2 skal sendes til
} else { //Hvis brugernavn ikke findes echo "Dit brugernavn og/el. kodeord er ikke korret.<br />Prøv igen"; } } ?>
coldgate >> Hvor er der bare små bitte spor af sikkerhed i det? Hvis jeg ser dig over skulderen, kan jeg jo gå hen til min egen PC og gå direkte ind på index1.php eller index2.php Det duer ikke til noget somhelst :)
Notice: Undefined index: login in c:\inetpub\wwwroot\3\logind.php on line 35
Warning: Cannot modify header information - headers already sent by (output started at c:\inetpub\wwwroot\3\logind.php:5) in c:\inetpub\wwwroot\3\logind.php on line 36
Notice: Undefined index: login in c:\inetpub\wwwroot\3\logind.php on line 35
Den fejl kommer vel af at PHPs error_reporting() er indstillet på det paranoide E_ALL-niveau. Men det retter vi op på. E_ALL, men ikke E_NOTICE vil vi have (E_NOTICE er den slags fejl som får PHP at sige "Du har jo ikke definieret varibeln $index endnu, hvordan skal jeg så vide hvad det er!"
Start med at sige, helt fra starten af (før session_start()):
hov, kom vidst til at trykke på enter lidt for tidligt :P
er totalt forviret, vil i ikke prøve at skrive koden på ny for mig :P ? efter have rettet $_SESSION['login'] = "OK"; og til logind.php istedet for login.php sker der ikke noget efter at have logget ind
Hvis coldgate og ksoren skriver som svar skal jeg give jer points ;)
Synes godt om
Ny brugerNybegynder
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.