Ik heb een login script geschreven dat werkt met sessies, maar vroeg me af of dit schript wel veilig is.
Ik hoop dus dat iemand van hier die over de nodige kennis beschikt er even naar zou willen kijken, en eventueel wat commentaar zou kunnen leveren.
Hieronder het login script:
En dit staat bovenin elke pagina om te controleren of iemand ingelogd is:
Ik wil dat het login script ook werkt bij gebruikers die geen cookies ondersteunen. Pagina's roep ik dus aan met bijvoorbeeld:
Iig vast bedankt.
Greetz,
Bram
Ik hoop dus dat iemand van hier die over de nodige kennis beschikt er even naar zou willen kijken, en eventueel wat commentaar zou kunnen leveren.
Hieronder het login script:
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
| <?php
session_start();
?>
<html>
<head>
<title></title>
</head>
<body>
<?php
if ($action=="login") {
$login=addslashes($login);
$password=addslashes($password);
$password=md5($password);
$sql="select id from users where login='$login' and password='$password'";
$res=mysql_query($sql);
$count=mysql_num_rows($res);
if ($count=='1') {
if ($rec=mysql_fetch_object($res)) {
$login='1';
$user_id=$rec->id;
$user_ip=$REMOTE_ADDR;
session_register("login");
session_register("user_id");
session_register("user_ip");
$session_id=session_id();
echo "Je bent ingelogd";
}
} else {
echo "Wrong login or password";
}
}
?>
<form action="login.php" method="post">
<table>
<tr>
<td>Login</td>
<td><input type="text" name="login" size="15" maxlength="15"></td>
</tr>
<tr>
<td>Password</td>
<td><input type="password" name="password" size="15" maxlength="15"></td>
</tr>
<tr>
<td><input type="hidden" name="action" value="login"></td>
<td><input type="submit" name="submit" value="login"></td>
</tr>
</table>
</form>
</body>
<html> |
En dit staat bovenin elke pagina om te controleren of iemand ingelogd is:
code:
1
2
3
4
5
6
7
8
| <?php
session_id($session_id);
session_start();
?>
if (($HTTP_SESSION_VARS["login"]!='1')&&($HTTP_SESSION_VARS["user_ip"]!=$REMOTE_ADDR)) {
echo "You need to login.";
} |
Ik wil dat het login script ook werkt bij gebruikers die geen cookies ondersteunen. Pagina's roep ik dus aan met bijvoorbeeld:
code:
1
| <a href="pagina.php?session_id=<?php echo "$session_id"; ?>">pagina</a> |
Iig vast bedankt.
Greetz,
Bram