Ik heb een login script geschreven. De basic werking van het script is dat hij kijkt naar een sessie variabele of er iemand is ingelogd. Zo niet dan geeft hij een form weer waarmee je kan inloggen.
Daarna voert de gebruiker zn gegevens in en drukt op de knop "login". Het script verwijst naar zichzelf, en zal controleren of er op "login" gedrukt is, zo ja dan gaat ie de gegevens van de gebruiker controleren enzo.
Klinkt allemaal erg standaard en ik zal zo ook deels van de code neerzetten.
Mijn probleem is nu dat als er niemand is ingelogd, het script nog steeds niks doet, terwijl hij dan dus met het inlog Form moet komen.
Ik weet dat ik ergens overheen aan het kijken ben, ik weet alleen niet wat!!
opmerkingen
session.auto_start = Off
session.use_cookies = On
session.use_only_cookies = Off
En dan nu de code
Daarna voert de gebruiker zn gegevens in en drukt op de knop "login". Het script verwijst naar zichzelf, en zal controleren of er op "login" gedrukt is, zo ja dan gaat ie de gegevens van de gebruiker controleren enzo.
Klinkt allemaal erg standaard en ik zal zo ook deels van de code neerzetten.
Mijn probleem is nu dat als er niemand is ingelogd, het script nog steeds niks doet, terwijl hij dan dus met het inlog Form moet komen.
Ik weet dat ik ergens overheen aan het kijken ben, ik weet alleen niet wat!!
opmerkingen
session.auto_start = Off
session.use_cookies = On
session.use_only_cookies = Off
En dan nu de code
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
| <?php if ($_SESSION['logged_in'] == NULL) //Dus als mn sessie niet bestaat { if ($_POST['Login'] != NULL) //Als het formulier is ingevuld en op Login is geramd { include ('dbconnect.php'); $sql = "SELECT username, password, Alliance, Account_type, Activated FROM user_login WHERE username = '$_POST['Username']"; // afgekapt om de layout te sparen $result = mysql_query($sql); if (mysql_num_rows($result) > 0) { $rij = mysql_fetch_array($result); $username = $rij["username"]; $password = $rij["password"]; $usertype = $rij["Account_type"]; $Activated = $rij["Activated"]; $Alliance = $rij["Alliance"]; } // simpele if statements om de ingevoerde waardes te vergelijken met de waardes uit de database if($_POST['Username'] != $username) { $_SESSION['logged_in'] = false; echo "<b>Your loginname was incorrect</b>"; } else if($_POST['Password'] != $password) { $_SESSION['logged_in'] = false; echo "<b>Your password was incorrect</b>"; } else if($Activated == false) { $_SESSION['logged_in'] = false; echo "<b>Your account has not yet been activated. bla bla</b>"; echo "<b>If u already posted an request bla bla</b>"; } else $_SESSION['logged_in'] = true; $_SESSION['usertype'] = $Inlog_Type; $_SESSION['username'] = $username; $_SESSION['alliance'] = $Alliance; } } Else { Echo "<form method=\"post\" action=\"$PHP_SELF\">"; Echo "<table><tr><td>InlogName:</td></tr>"; Echo "<tr><td><input name=\"Username\" type=\"text\" value=\"\" maxlength=\"15\"></td></tr>"; Echo "<tr><td>Password:</td></tr>"; Echo "<td><input name=\"Password\" type=\"Password\" value=\"\" maxlength=\"15\"></td></tr>"; Echo "<tr><td><input type=\"submit\" name=\"Login\" value=\"Login\"></td></tr></table>"; Echo "</form>"; } } ?> |
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| <?php session_start(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Main</title> </head> <body> <?php include('Login.php') //Normal navigation code Blaaat ?> </body> </html> |
[ Voor 18% gewijzigd door D-Raven op 02-06-2004 10:24 ]