Top
Phpuniverset logo
 
930 banner

INDHOLD

Forside

Script libary

Job annoncer

Tips og Tricks

Konkurrence

Downloads

Dokumenter

Forum

Online udviklere


ARTIKLER

CSS

Diverse

E-handel / annoncer

Grafik

Html

Internet

Javascript

Linux

PHP/MySQL

Programmer

Flash

Søgemaskiner

Windows

C / C++


INFO

Information

Annoncering

Kontakt

Forside Forum PHP, mysql Problemer med Passwordbeskyttelse

Problemer med Passwordbeskyttelse


 

Problemer med Passwordbeskyttelse

Simon  

Jeg skal have passwordbeskyttet nogle sider og har forsøgt forskellige metoder, men uden
held.
Jeg har f.eks. prøvet med cookies (har ingen erfaring med dette), men det lykkedes ikke
(har kun prøvet på min lokale apache-server).
Desuden har jeg forsøgt med forskellige scripts.

Her er problemet:

for at komme ind på nedenstående sider skal man indtaste sit brugernavn og password.

admin1.php3
admin2.php3
admin3.php3
admin3.php3

Når man har logget sig ind på en af siderne er der links til de andre sider, men hvad
gør jeg for at brugeren kan komme videre ind på de andre sider uden at skulle indtaste
brugernavn og password igen.

På nuværende tidspunkt har jeg løst det ved at linkene indeholder brugernavn og
password (f.eks. admin2.php3?action=login&brugernavn=$brugernavn&password=$password).
Som I kan se er det en meget usikker løsning bl.a. fordi brugernavn og password bliver
gemt i browserens adresselinje.

Jeg håber I kan hjælpe mig med mit problem.

På forhånd tak!



Dato : 17.08.2001, 20:08

Visninger : 1364

Points : 0

 

Du kan bruge:

http://www.phpuniverset.dk/webtips.phtml ->
Password beskyttet område

tbn


Dato : 18.08.2001, 00:37

skrevet af : tbn  

 

Du opretter en cookie ved at bruge metoden 
setcookie(bruger["brugernavn"],"brugernavnet der skal bruges");
setcookie(bruger["codeord"],"codeordret der skal bruges");
Her efter vi følgende variabler være tilgængelige på siden 
$bruger["brugernavn"];
$bruger["codeord"];
Som indeholder de ønskede værdier.


Dato : 27.08.2001, 10:29

skrevet af : Sune Simonsen  

 

Jeg prøvede lige at hurtigt at skrive det hér script! jeg vil ikke garantere 100% for
det, men jeg håber det kan give dig lidt inspiration til hvordan det kan laves...

<?
//------Hvis første login, krypteres passwordet----------
if ($set_cookie == 1){
 
$pass md5($pass); //kryptere koden fra inputtet
}

$bruger_navn "Henning"//bruger navnet
$password "md5(123)"//krypteret udgave af koden er 123

//--------Hvis navn og kode er rigtige sættes der en cookie----------
if ($set_cookie == && $name == $bruger_navn && $pass == $password){
 
setcookie("name""$name"time()+2419200); //navne cookie
 
setcookie("pass""$pass"time()+2419200); //krypteret password cookie
}

//------------- Headers der beskytter indholdet på siden----------
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0"false);
header("Pragma: no-cache");

//------Tester om brugernavn og password er tilstede--------
if ($name != null && $pass != null){

//---------------Tester navn og kode-----------------
 
if ($name == $bruger_navn && $pass == $password){ 
  echo 
"Du er logget ind
            <FORM METHOD='POST' ACTION='admin2.php3'> 
             <INPUT TYPE='submit' VALUE='Næste side'>
             <INPUT TYPE='hidden' NAME='name' VALUE='
$name'>
             <INPUT TYPE='hidden' NAME='pass' VALUE='
$pass'>
            </FORM>"
;
 }

//-------------- Hvis navnet eller koden er forkert---------
 
else if ($name != $bruger_navn || $pass != $password){
  
$fejl 1;
  echo 
"Fejl!";
 }
}

//----------------Login prompt eller hvis koden er forkert--------------
if ($name == null && $pass == null || $fejl == 1){
 <
FORM METHOD='POST' ACTION='$PHP_SELF'>
  
Navn: <INPUT TYPE='text' NAME='name'>
  <
BR>
  
Kode: <INPUT TYPE='password' NAME='pass'>
  <
BR>
  <
INPUT TYPE='submit' VALUE='Login'>
  <
INPUT TYPE='hidden' NAME='set_cookie' VALUE='1'>
 </
FORM>
}


Dato : 16.03.2003, 10:52

skrevet af : micma18  

 

Jeg prøvede lige at hurtigt at skrive det hér script! jeg vil ikke garantere 100% for
det, men jeg håber det kan give dig lidt inspiration til hvordan det kan laves...

<?
//------Hvis første login, krypteres passwordet----------
if ($set_cookie == 1){
 
$pass md5($pass); //kryptere koden fra inputtet
}

$bruger_navn "Henning"//bruger navnet
$password "md5(123)"//krypteret udgave af koden er 123

//--------Hvis navn og kode er rigtige sættes der en cookie----------
if ($set_cookie == && $name == $bruger_navn && $pass == $password){
 
setcookie("name""$name"time()+2419200); //navne cookie
 
setcookie("pass""$pass"time()+2419200); //krypteret password cookie
}

//------------- Headers der beskytter indholdet på siden----------
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0"false);
header("Pragma: no-cache");

//------Tester om brugernavn og password er tilstede--------
if ($name != null && $pass != null){

//---------------Tester navn og kode-----------------
 
if ($name == $bruger_navn && $pass == $password){ 
  echo 
"Du er logget ind
            <FORM METHOD='POST' ACTION='admin2.php3'> 
             <INPUT TYPE='submit' VALUE='Næste side'>
             <INPUT TYPE='hidden' NAME='name' VALUE='
$name'>
             <INPUT TYPE='hidden' NAME='pass' VALUE='
$pass'>
            </FORM>"
;
 }

//-------------- Hvis navnet eller koden er forkert---------
 
else if ($name != $bruger_navn || $pass != $password){
  
$fejl 1;
  echo 
"Fejl!";
 }
}

//----------------Login prompt eller hvis koden er forkert--------------
if ($name == null && $pass == null || $fejl == 1){
 <
FORM METHOD='POST' ACTION='$PHP_SELF'>
  
Navn: <INPUT TYPE='text' NAME='name'>
  <
BR>
  
Kode: <INPUT TYPE='password' NAME='pass'>
  <
BR>
  <
INPUT TYPE='submit' VALUE='Login'>
  <
INPUT TYPE='hidden' NAME='set_cookie' VALUE='1'>
 </
FORM>
}


Dato : 16.03.2003, 10:52

skrevet af : micma18  

 

ok! der mangler lige en echo i den nederste if !!!..... ;-)

Dato : 16.03.2003, 10:56

skrevet af : micma18  




Login for at skrive et indlg :



   Brugernavn

Password
 

+ Opret en ny Bruger, Klik her

+ Glemt brugernavn/password

 

Send Artikel/anmeldelse til: phpuni@phpuniverset.dk

Tilbage til oversigt

Phpuniverset's politik om personlige oplysninger, artikler & Koder Phpuniverset er optimeret til Mozilla 1024 * 768 Phpuniverset version: 3.0 beta
Webhost : Ignesco.dk

Bund