Avatar billede -onslow- Nybegynder
27. juli 2005 - 22:07 Der er 17 kommentarer og
1 løsning

password beskytte hjemmeside

Hej eksperter.

Jeg vil gerne have hjælp til at lave et bruger system til min hjemmeside. det skal kun være muligt for mig (admin). at oprette nye brugere til systemet.
og skal være rimelig sikkert. det skal altså helst være nogenlunde umuligt at komme ind uden password og bruger.
det skulle gerne være sådan at jeg bare skulle kunne indskrive lidt kode til mine filer, så de bliver beskyttet.
og når man er logget ind skal man være det til man logger ud igen, eller lukker vinduet ned.
jeg har meget lidt erfaring med php og mysql. men jeg har mulighed for at bruge det på min server.

det må gerne være en guide til dette. eller et færdigt system hvor jeg selv kan ændre det til mine behov.

men vigtigst af alt det skal være beskrevet så det er let at finde ud af. og forklaret trin for trin.

mvh danelyst
Avatar billede foxmulder58 Praktikant
27. juli 2005 - 22:16 #1
Du kan bruge dette her login system, det er til 1 bruger og KUN 1 bruger der kan logge sig ind.


<------------login.php --------------------->


<html><head><title>Login-system</title></head><body bgcolor="#C0C0CF">
<?


$realbruger = "admin"; //Det rigtige brugernavn
$realpw = "123"; //Det rigtige password

if($action == "login"){

if(!$brugernavn) echo "Du har ikke indtastet et brugernavn!";
elseif(!$password) echo "Du har ikke indtastet en password!";
else{

if($brugernavn == $realbruger && $password == $realpw){
?>

<font size="2" face="Verdana">Den beskyttede side...</font>

<?
}
else echo "Der er fejl i enten brugernavn eller password!";

}
}
else{
?>


<form action="<? echo $PHP_SELF; ?>?action=login" method="post">
<table><tr>
<td><font size="2" face="Verdana">Brugernavn:</font></td>
<td><input type="text" name="brugernavn"></td></tr><tr>
<td><font size="2" face="Verdana">Password:</font></td>
<td><input type="password" name="password"></td></tr><tr>
<td></td><td><input type="submit" value="Login"></td></tr></table>
</form>



<?
}
?>
</body>
</html>





mvh
mads
Avatar billede foxmulder58 Praktikant
27. juli 2005 - 22:17 #2
Det er et rimeligt simpelt script!


mvh
Mads
Avatar billede kdjweb Nybegynder
27. juli 2005 - 22:19 #3
nu kigger jeg på dit login system mads.

der er meget nemt at få det til at arbejde med mysql, faktisk fantastisk nemt :)

det eneste man gør istedet er at hente $realbruger og $realpw fra databasen
Avatar billede foxmulder58 Praktikant
27. juli 2005 - 22:25 #4
jeps kasper, godt at høre fra dig igen!

Fanger dig forhåbentlig en dag på messenger! :)


mvh
mads
Avatar billede -onslow- Nybegynder
27. juli 2005 - 22:25 #5
hej mads..

mange tak for hurtige svar..
og håber du vil være behjælpelig med nogle tillægs spørgsmål.

vil du ikke kort forklare hvordan dette stykke kode virker. og hvordan jeg placere det i de forskellig sider jeg vil lave. og for mig ser det ud som om at brugernavn og password er i selve fill'en er det ikke et sikkerheds problem.

mvh danelyst
Avatar billede -onslow- Nybegynder
27. juli 2005 - 22:27 #6
det er mig der ikke fatter så meget af mysql og php... jeg skal lave det til en lilleforening hvor der kommer nogle plysninger som ikke ønskes offentligt udbredt.
Avatar billede kdjweb Nybegynder
27. juli 2005 - 22:30 #7
lav denne tabel

CREATE TABLE `login` (
`id` INT NOT NULL AUTO_INCREMENT ,
`brugernavn` VARCHAR( 200 ) NOT NULL ,
`kodeord` VARCHAR( 200 ) NOT NULL ,
`rang` TINYINT( 1 ) NOT NULL ,
PRIMARY KEY ( `id` )
) TYPE = MYISAM ;

brug Mads'es forslag, bare ændre det til:



<html><head><title>Login-system</title></head><body bgcolor="#C0C0CF">
<?

$q = mysql_query("SELECT * FROM login WHERE brugernavn = '$_POST[brugernavn]'")
while($r = mysql_fetch_array($q)){
  $realbruger = $r['brugernavn'];
  $realpw = $r['kodeord'];
  $id = $r['id'];
}

if($action == "login"){

if(!$_POST['brugernavn']) echo "Du har ikke indtastet et brugernavn!";
elseif(!$_POST['password']) echo "Du har ikke indtastet en password!";
else{

if($_POST['brugernavn'] == $realbruger && $_POST['password'] == $realpw){

$_SESSION['login'] = 1;
$_SESSION['id'] = $id;

}
else echo "Der er fejl i enten brugernavn eller password!";

}
}
else{
?>


<form action="<? echo $PHP_SELF; ?>?action=login" method="post">
<table><tr>
<td><font size="2" face="Verdana">Brugernavn:</font></td>
<td><input type="text" name="brugernavn"></td></tr><tr>
<td><font size="2" face="Verdana">Password:</font></td>
<td><input type="password" name="password"></td></tr><tr>
<td></td><td><input type="submit" value="Login"></td></tr></table>
</form>



<?
}
?>
</body>
</html>



når du så vil tjekke om brugeren er logget ind på nogle sider som man SKAL være logget ind for at se siger du

<?php

if($_SESSON['login']){

// Din hemmelige side

} else {

// Du er ikke logget ind

}
Avatar billede kdjweb Nybegynder
27. juli 2005 - 22:32 #8
hehe håber du kan bruge min men det er tilgengæld bedre.. den kode mads skrev gir dig kun adgang til 1 side :)

Mads, håber jeg da ;)
Avatar billede -onslow- Nybegynder
27. juli 2005 - 22:32 #9
når du skriver: "Du kan bruge dette her login system, det er til 1 bruger og KUN 1 bruger der kan logge sig ind"

er det så ikke muligt at lave flere brugere ved at oprette dem i mysql databasen?
og vil du ikke være rar at skrive hvad jeg skal oprette af tabeller og hvor jeg skal henvise til databasen.
Avatar billede kdjweb Nybegynder
27. juli 2005 - 22:33 #10
onslow.. kig på mit eksempel...
Avatar billede -onslow- Nybegynder
27. juli 2005 - 22:34 #11
kdjweb>>> kigger lige lidt på det.. kommer nok med nogle spørgsmål lidt senere...
Men mange tak indtil videre
Avatar billede -onslow- Nybegynder
27. juli 2005 - 23:13 #12
kdjweb>>>>
ok nu er tabbellen lavet hvad skal jeg så skrive i de 4 forskellige felter som jeg har lavet i tabbel.

FELT            TYPE              FUNKTION                VÆRDI
id              int(11)        hvad skal jeg vælge          ?
brugernavn    varchar(200)      hvad skal jeg vælge          ok bruger navn
kodeord      varchar(200)      hvad skal jeg vælge          ok kodeord
rang          tinyint(1)      hvad skal jeg vælge          ?

og skulle jeg ændre i den text(kode) til siden som du har laet ovenfor. og filen skulle hede login.pxp ikke?
Avatar billede foxmulder58 Praktikant
28. juli 2005 - 00:38 #13
Onslow >> Du skal ind i din PHPMyAdmin og køre denne SQL sætning Kasper har givet dig!


mvh
Mads
Avatar billede kdjweb Nybegynder
28. juli 2005 - 13:33 #14
i brugernavn skal du skrive det brugernavn du vil have, kodeord, det kodeord du vil have og til sidst.. rang.. den tjekker om du er admin eller bruger.. du kunne f.eks. skrive at din rang er 1 og andre brugere er 2. måske noget helt tredje
Avatar billede -onslow- Nybegynder
30. juli 2005 - 17:30 #15
login. php giver følgene fejl:'


Parse error: parse error in /data/members/free/tripod/dk/h/g/h/hgh/htdocs/login.php on line 5
Avatar billede kdjweb Nybegynder
30. juli 2005 - 19:50 #16
hvad er linie 5 ?
Avatar billede surfman Nybegynder
17. april 2006 - 14:55 #17
Fordi det er linje 5 ?.

Nå men der er en fejl i din login fil. Er den connectet rigtig til sql databasen?
Avatar billede -onslow- Nybegynder
10. august 2007 - 15:36 #18
lukkes
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