Avatar billede ofirpeter Nybegynder
12. maj 2003 - 21:52 Der er 15 kommentarer og
1 løsning

Simpelt login

Nu har jeg søgt lidt rundt på netttet, men har endnu ikke fundet det jeg ønsker. Det skal slet ikke være så avenceret som mange gør det til :-)

Jeg skal bruge et login system med fem forskellige brugernavn og password. Og afhængit af hvad man indtaster skal de sendes til en forskellig internet adresse.

Jeg skal også have en stum kode, jeg kan sætte ind i den side der bliver linket til. Så man ikke bare kan gå ind på dem ved at skrive addressen.

Hber virkelig der er nogen der kan hjælpe!

Mvh.
Avatar billede nomak Nybegynder
12. maj 2003 - 22:00 #1
http://www.sukos.dk/php/login/

og det sidste if ($_SERVER[HTTP_REFER] != "din side") { header("location: http://www.lamerz.dk"); }
Avatar billede ofirpeter Nybegynder
12. maj 2003 - 22:28 #2
Hvilken en skal jeg bruge? det ser ikke helt enkelt ud..
Avatar billede avminarm Juniormester
12. maj 2003 - 22:36 #3
Avatar billede ofirpeter Nybegynder
13. maj 2003 - 07:31 #4
Den sender hverken nogen videre til en anden side, har ikke flere brugere, og har ikke noget jeg kan sætte ind på andre sider?
Avatar billede avminarm Juniormester
13. maj 2003 - 12:11 #5
Her er et meget simpelt script. *UTESTET*

<?php
/*
Kodestump der kan indsættes på toppen af de side man vil beskytte:

session_start();
if (!isset($_SESSION['login'], $_SESSION['snr']) || $_SESSION['snr'] != session_id()) {
  echo "Du er IKKE logget ind";
  exit;
}
*/

session_start();

//Brugere indsættes her
$bruger1 = "B1"; //brugernavn
$pass1 = "111"; //password

$bruger2 = "B2"; //brugernavn
$pass2 = "222"; //password

$bruger3 = "B3"; //brugernavn
$pass3 = "333"; //password

$bruger4 = "B4"; //brugernavn
$pass4 = "444"; //password

$bruger5 = "B5"; //brugernavn
$pass5 = "555"; //password


//Hvis der er trykket på login formen aktiveres scriptet
if($_POST['action'] == "login"){

//tjek om felter er udfyldt
if(!$_POST['brugernavn']) {
  echo "Du har ikke indtastet et brugernavn!";
}elseif(!$_POST['password']){
  echo "Du har ikke indtastet et password!";
}elseif(isset($_POST['password']) && isset($_POST['brugernavn'])){

//Sender til forskellige sider og starter en session
if($brugernavn == $bruger1 && $password == $pass1){
  $_SESSION['login']="ok";
  $_SESSION['sessionnr'] = session_id();
  header("location: bruger1side.php");
  exit;
}

if($brugernavn == $bruger2 && $password == $pass2){
  $_SESSION['login']="ok";
  $_SESSION['snr'] = session_id();
  header("location: bruger2side.php");
  exit;
}

if($brugernavn == $bruger3 && $password == $pass3){
  $_SESSION['login']="ok";
  $_SESSION['sessionnr'] = session_id();
  header("location: bruger3side.php");
  exit;
}

if($brugernavn == $bruger4 && $password == $pass4){
  $_SESSION['login']="ok";
  $_SESSION['sessionnr'] = session_id();
  header("location: bruger4side.php");
  exit;
}

if($brugernavn == $bruger5 && $password == $pass5){
  $_SESSION['login']="ok";
  $_SESSION['sessionnr'] = session_id();
  header("location: bruger5side.php");
  exit;

}

}
?>

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table><tr>
<td>Brugernavn:</td>
<td><input type="text" name="brugernavn"></td></tr><tr>
<td>Password:</td>
<td><input type="password" name="password"><input type="hidden" name="action" value="login"></td></tr><tr>
<td></td><td><input type="submit" value="Login"></td></tr></table>
</form>

Du kan logge ind med følgende oplysninger:

B1<br>
111
<br><br>
B2<br>
222
<br><br>
B3<br>
333
<br><br>
B4<br>
444
<br><br>
B5<br>
555
Avatar billede avminarm Juniormester
13. maj 2003 - 12:12 #6
hov - sessionnr skal rettes til snr under 2,3,4,5
Avatar billede ofirpeter Nybegynder
13. maj 2003 - 15:00 #7
Det ser godt ud :-D Prøver det lige :) Jeg forstår dog ikke rigtig det med "sessionnr skal rettes til snr under 2,3,4,5" ?
Avatar billede ofirpeter Nybegynder
13. maj 2003 - 15:26 #8
Jeg får denne fejl, når jeg kører scriptet
--Parse error: parse error, unexpected $ in /home/web/gb1404/husmor/mulle/log.php on line 100 --

Den brugte kode kan ses her:
http://www.husmor.danskweb.dk/mulle/log.phps
Avatar billede ofirpeter Nybegynder
13. maj 2003 - 16:13 #9
hmm det var ikke smart, kom til at acceptere dig..
Avatar billede avminarm Juniormester
14. maj 2003 - 11:39 #10
jo det var smart nok - nu bliver jeg jo nødt til at hjælpe dig færdigt ;o) - hvis du lige har lidt tålmodighed - det skal nok komme til at virke!
Avatar billede ofirpeter Nybegynder
14. maj 2003 - 14:46 #11
(Jep et hemmeligt trick var det :) Har masser af tålmodighed :0) - Og kunne være rigtig fedt hvis det kom til at funke!
Avatar billede ofirpeter Nybegynder
14. maj 2003 - 16:09 #12
Okay masser og masser. Kunne være dejligt hvis den kom op inden dagen er omme!
Avatar billede avminarm Juniormester
14. maj 2003 - 21:03 #13
Der er lidt tilbage af dagen endnu - jeg har lavet lidt om på scriptet . men testet det og det virker ;o)

<?php
/*
Kodestump der kan indsættes på toppen af de side man vil beskytte:

session_start();
if (!isset($_SESSION['login'], $_SESSION['snr']) || $_SESSION['snr'] != session_id()) {
  echo "Du er IKKE logget ind";
  exit;
}

*/

session_start();

//brugere og passwords i arrays (Husk et array starter med nr. 0)
$brugerarr = array("B1","B2","B3","B4","B5");
$passarr = array("111","222","333","444","555");

//Hvis der er trykket på login formen aktiveres scriptet
if($_POST['action'] == "login"){

//tjek om felter er udfyldt
if(!$_POST['brugernavn']) {
  echo "Du har ikke indtastet et brugernavn!";
}elseif(!$_POST['password']){
  echo "Du har ikke indtastet et password!";
}elseif(!in_array($_POST['brugernavn'],$brugerarr) || !in_array($_POST['password'],$passarr)){
  echo "Du har indtastet forkert brugernavn eller password!";
}else{

//Sender til forskellige sider og starter en session
if($_POST['brugernavn'] == $brugerarr[0] && $_POST['password'] == $passarr[0]){
  $_SESSION['login']="ok";
  $_SESSION['snr'] = session_id();
  header("location: bruger0side.php");
  exit;
}

if($_POST['brugernavn'] == $brugerarr[1] && $_POST['password'] == $passarr[1]){
  $_SESSION['login']="ok";
  $_SESSION['snr'] = session_id();
  header("location: bruger1side.php");
  exit;
}

if($_POST['brugernavn'] == $brugerarr[2] && $_POST['password'] == $passarr[2]){
  $_SESSION['login']="ok";
  $_SESSION['snr'] = session_id();
  header("location: bruger2side.php");
  exit;
}

if($_POST['brugernavn'] == $brugerarr[3] && $_POST['password'] == $passarr[3]){
  $_SESSION['login']="ok";
  $_SESSION['snr'] = session_id();
  header("location: bruger3side.php");
  exit;
}

if($_POST['brugernavn'] == $brugerarr[4] && $_POST['password'] == $passarr[4]){
  $_SESSION['login']="ok";
  $_SESSION['snr'] = session_id();
  header("location: bruger4side.php");
  exit;
}

}

}
?>

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table><tr>
<td>Brugernavn:</td>
<td><input type="text" name="brugernavn"></td></tr><tr>
<td>Password:</td>
<td><input type="password" name="password"><input type="hidden" name="action" value="login"></td></tr><tr>
<td></td><td><input type="submit" value="Login"></td></tr></table>
</form>

Du kan logge ind med følgende oplysninger:
<br><br>
B1<br>
111
<br><br>
B2<br>
222
<br><br>
B3<br>
333
<br><br>
B4<br>
444
<br><br>
B5<br>
555
Avatar billede avminarm Juniormester
17. maj 2003 - 23:32 #14
hej ofir peter - jeg håber det virker - du kan finde et lidt anderledes ekesmpel på: http://www.wagners.dk/php/index.php?op=vis&kode=7 - her er det lidt nemmere at tilføje brugere ;-) +  der er tjek af om bruger og password er rigtige
Avatar billede nek Praktikant
25. august 2004 - 21:21 #15
Selv om det jo er en lidt gammel sag - jeg fik lyst til at bruge scriptet, og det virker også godt, bortset fra,  at det ingen virkning har, når jeg sætter den anførte kodestump ind på den side, jeg vil beskytte. Jeg har sat koden allerøverst før noget andet i index1.php og ville så vente en besked om, at jeg ikke var logget ind, men siden kommer nok så nydeligt frem. Jeg har også prøvet at genstarte computeren og skriv url/index1.php direkte, men det hjælper ikke. jeg ville være glad for lidt hjælp
Kodestumpen er:
<?php
/*
Kodestump der kan indsættes på toppen af de side man vil beskytte:

session_start();
if (!isset($_SESSION['login'], $_SESSION['snr']) || $_SESSION['snr'] != session_id()) {
  echo "Du er IKKE logget ind";
  exit;
}

*/
?>
Avatar billede avminarm Juniormester
27. august 2004 - 21:49 #16
kan du ikke vise din fil her?

er det på din egen server eller en på nettet?
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