Toon posts:

[PHP] Inlog met persoonlijke pagina

Pagina: 1
Acties:
  • 117 views sinds 30-01-2008

Verwijderd

Topicstarter
Hoi :)

Wat ik vandaag wil bereiken is een inlogscript maken welke de gebruiker na het inloggen doorstuurt naar zijn persoonlijke pagina. Dus:
user: pietjepuk wachtwoord: frats -> pietjepuk.php.
Het hoeft niet perse super veilig maar wel net dat inloggen. Hier is wat ik al heb:

config.php
code:
1
2
3
4
5
6
7
8
9
<? 
$username="henk"; 
$password="henk"; 
$url="henk.php";

$username="piet"; 
$password="piet"; 
$url="piet.php";
?>


login.php
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<? 

session_start(); 
include "config.php"; 
if(!empty($_POST)) { 
$_SESSION["username"]=$_POST["username"]; 
$_SESSION["password"]=$_POST["password"]; 

if( $_SESSION["username"]!=$username) || ($_SESSION["password"]!=$password) { 

die("U heeft een verkeerde gebruikersnaam of wachtwoord ingevoerd!<br> <a href=\"login.php\">Terug</a>"); 

session_destroy(); 
}else{ 
header("Location: geheim.php"); 
} 
}else{ 
?> 
<html> 
<body> 
<form method=post action="<? echo($_SERVER["PHP_SELF"]);?>"> 
Gebruikersnaam: <input name=username><br> 
Wachtwoord: <input name=password type=password><br> 
<input type=submit value="Inloggen!"> 
</form> 
</body> 
</html> 
<? 
} 
?>


de userpage.php
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<? 
session_start(); 
if(!isset($_SESSION["username"]) || !isset($_SESSION["password"])) 

die("<h2>Je hebt niet correct ingelogd!</h2><br><a href=\"login.php\">Klik hier om in te loggen</a>"); 

}else{ 
?> 
<html> 
<head> 
<title>Beveiligde pagina</title> 
</head> 
<body> 
<h2>Welkom <? echo($_SESSION["username"]); ?>, je hebt correct ingelogd!</h2> 
<a href="logout.php">Uitloggen</a> 
</body> 
</html> 
<? 
} 
?>


logout.php
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<? 
session_start(); 
if(!isset($_SESSION["username"]) || !isset($_SESSION["password"])) { 

die("Je moet eerst ingelogd zijn. <a href=\"login.php\">Log hier in.</a>"); 

}else{ 
session_unset(); 
session_destroy(); 

echo "Je bent nu uitgelogd.<br>"; 
echo "De pagina <a href=\"geheim.php\">geheim.php</a> is niet meer bereikbaar.<br>"; 
echo "Log <a href=\"login.php\">hier</a> eventueel weer in."; 

} 
?>


Zoals je ziet ben ik al redelijk opweg. Het werkt zo iig al voor 1 persoontje, maar ik wil dus dat het voor meerdere gaat werken. Dit is bedoeld om dus op bijv. piet.php de afspraken die zijn gemaakt te tonen etc.

Iemand die weet hoe ik het moet aanpassen, zodat het werkt voor meerdere personen :?

  • Noork
  • Registratie: Juni 2001
  • Niet online
Lijkt me niet al te lastig.

code:
1
2
$link=$_SESSION["username"].'.php';
header("location:$link");

  • ripexx
  • Registratie: Juli 2002
  • Laatst online: 25-05 22:36

ripexx

bibs

Wat dacht je van de usernames en wachtwoorden ergens in op te slaan, zoals bijvoorbeeld een database:? Kijk eens naar bijvoorbeeld de tutorials op www.PHPFreakz.nl Dara staan meer dan genoeg voorbeelden met uitleg. :)
Noork schreef op 12 mei 2004 @ 15:18:
Lijkt me niet al te lastig.

code:
1
2
$link=$_SESSION["username"].'.php';
header("location:$link");
En dat is ook zo lekker onderhoudbaar. Denk ook aan de langere termijn enz. Als je 1 file moet update is het nog te doen maar bij 10 denk je het is wel genoeg en als het er 100 zijn dan heb je het al snel gehad.

[ Voor 50% gewijzigd door ripexx op 12-05-2004 15:21 ]

buit is binnen sukkel


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 24-05 14:53

NMe

Quia Ego Sic Dico.

Een pagina personalpage.php maken die je met een get var een gebruikersid doorspeelt bijvoorbeeld. Er zijn zat manieren te bedenken. ;)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • koli-man
  • Registratie: Januari 2003
  • Laatst online: 13-05 14:28

koli-man

Bartender!!!!

Meta refresh doorsturen, is ook nog een optie

Hey Isaac...let's go shuffleboard on the Lido - deck...my site koli-man => MOEHA on X-Box laaaiiiff


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 24-05 14:53

NMe

Quia Ego Sic Dico.

Verwijderd schreef op 12 mei 2004 @ 15:16:
config.php
code:
1
2
3
4
5
6
7
8
9
<? 
$username="henk"; 
$password="henk"; 
$url="henk.php";

$username="piet"; 
$password="piet"; 
$url="piet.php";
?>
Ff tussendoor, dat gaat dus nooit werken. Probeer eens met arrays te werken, als je het dan niet in een database wil opslaan....

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Noork
  • Registratie: Juni 2001
  • Niet online
ripexx schreef op 12 mei 2004 @ 15:19:
Wat dacht je van de usernames en wachtwoorden ergens in op te slaan, zoals bijvoorbeeld een database:? Kijk eens naar bijvoorbeeld de tutorials op www.PHPFreakz.nl Dara staan meer dan genoeg voorbeelden met uitleg. :)
[...]

En dat is ook zo lekker onderhoudbaar. Denk ook aan de langere termijn enz. Als je 1 file moet update is het nog te doen maar bij 10 denk je het is wel genoeg en als het er 100 zijn dan heb je het al snel gehad.
Ja ik weet het, zo zou ik het zelf ook nooit doen. Ik zou meer iets doen met een variabele in de url. Maar hij vraagt hier toch om??

  • ripexx
  • Registratie: Juli 2002
  • Laatst online: 25-05 22:36

ripexx

bibs

Noork schreef op 12 mei 2004 @ 15:22:
[...]

Ja ik weet het, zo zou ik het zelf ook nooit doen. Ik zou meer iets doen met een variabele in de url. Maar hij vraagt hier toch om??
Klopt ook wel, maar handig is anders. Ach de TS moet het zelf weten ;)

buit is binnen sukkel


Verwijderd

Topicstarter
Inderdaad :).

Komt wel goed, ga weer ff klooien.

  • koli-man
  • Registratie: Januari 2003
  • Laatst online: 13-05 14:28

koli-man

Bartender!!!!

Verwijderd schreef op 12 mei 2004 @ 15:25:
Inderdaad :).

Komt wel goed, ga weer ff klooien.
Ach, je kan toch niet Paus worden voor dat je kapelaan bent geweest. :+

Hey Isaac...let's go shuffleboard on the Lido - deck...my site koli-man => MOEHA on X-Box laaaiiiff


Verwijderd

Topicstarter
koli-man schreef op 12 mei 2004 @ 15:27:
[...]

Ach, je kan toch niet Paus worden voor dat je kapelaan bent geweest. :+
:O :)


login.php moet dus worden:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<? 

session_start(); 
include "config.php"; 
if(!empty($_POST)) { 
$_SESSION["username"]=$_POST["username"]; 
$_SESSION["password"]=$_POST["password"]; 
$link=$_SESSION["username"].'.php';

if( $_SESSION["username"]!=$username) || ($_SESSION["password"]!=$password) { 

die("U heeft een verkeerde gebruikersnaam of wachtwoord ingevoerd!<br> <a href=\"login.php\">Terug</a>"); 

session_destroy(); 
}else{ 
header("location:$link");
} 
}else{ 
?> 
<html> 
<body> 
<form method=post action="<? echo($_SERVER["PHP_SELF"]);?>"> 
Gebruikersnaam: <input name=username><br> 
Wachtwoord: <input name=password type=password><br> 
<input type=submit value="Inloggen!"> 
</form> 
</body> 
</html> 
<? 
} 
?>

FF checke n<? 

session_start(); 
include "config.php"; 
if(!empty($_POST)) { 
$_SESSION["username"]=$_POST["username"]; 
$_SESSION["password"]=$_POST["password"]; 
$link=$_SESSION["username"].'.php';

if( $_SESSION["username"]!=$username) || ($_SESSION["password"]!=$password) { 

die("U heeft een verkeerde gebruikersnaam of wachtwoord ingevoerd!<br> <a href=\"login.php\">Terug</a>"); 

session_destroy(); 
}else{ 
header("location:$link");
} 
}else{ 
?> 
<html> 
<body> 
<form method=post action="<? echo($_SERVER["PHP_SELF"]);?>"> 
Gebruikersnaam: <input name=username><br> 
Wachtwoord: <input name=password type=password><br> 
<input type=submit value="Inloggen!"> 
</form> 
</body> 
</html> 
<? 
} 
?>

Verwijderd

Topicstarter
Hmm, zo krijg ik een parse error op lijntje 10 :(

  • Noork
  • Registratie: Juni 2001
  • Niet online
NMe84 schreef op 12 mei 2004 @ 15:21:
[...]

Ff tussendoor, dat gaat dus nooit werken. Probeer eens met arrays te werken, als je het dan niet in een database wil opslaan....
ja klopt, en bovenstaande ook niet vergeten. anders werkt het ook niet.

  • Noork
  • Registratie: Juni 2001
  • Niet online
Verwijderd schreef op 12 mei 2004 @ 15:34:
Hmm, zo krijg ik een parse error op lijntje 10 :(
ach, misschien heb ik een aanhalingsteken verkeerd staan. heb dit net even uit m'n kleine teen gezogen.

  • PromWarMachine
  • Registratie: Oktober 2001
  • Laatst online: 17-05 09:57

PromWarMachine

Forsaken Archer

Verwijderd schreef op 12 mei 2004 @ 15:34:
Hmm, zo krijg ik een parse error op lijntje 10 :(
err tja. Wat staat er nu in $username en $password denk je? :X
Blaat, was die config.php even vergeten :z

Dat deze manier onhandig is, weet je nu wel, maar je maakt het jezelf ook eens onnodig ingewikkeld hoor...

[ Voor 29% gewijzigd door PromWarMachine op 12-05-2004 15:40 ]

Dividend for Starters


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 12-05 22:23

curry684

left part of the evil twins

Hum ja debuggen mag je zelf doen en op de diverse genoemde sites zijn stapels voorbeelden te vinden van hoe je een nette login maakt.

Programming & Webscripting is niet bedoeld om je aan het handje te nemen om te leren programmeren, maar op op niveau te discussieren over problemen die bij programmeren optreden. Als je dus een probleem geisoleerd hebt dat je hebt geprobeerd op te lossen maar niet uit komt in je uppie zijn we je graag van dienst, maar dit is toch een enkeltje www.php.net ;)

Professionele website nodig?


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 00:01

Janoz

Moderator Devschuur®

!litemod

AbeAbe, het is misschien handig om zelf eens even enkele tutorials te doen. Dit soort 'bij het handje neem' topics zijn, zoals in de faq is te lezen, minder gewenst in Programming & Webscripting. Parse errors zijn bijvoorbeeld redelijk simpel zelf op te lossen door te debuggen.

-- hmm.. spuit 11 -

[ Voor 4% gewijzigd door Janoz op 12-05-2004 15:42 ]

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'

Pagina: 1

Dit topic is gesloten.