Wachtwoord hashen
Pagina: « vorige 1 2 3 4 volgende »
Om dat te forceren gebruik je exit().
Ik kan nu met geen enkele gebruiker meer aanloggen.
Met verkeerde username => wit scherm
Met verkeerd wachtwoord => incorrect password (lijkt me dus goed)
Met juiste credentials + admin op yes => incorrect username
Met juiste crendentials zonder admin op yes => acces denied
Code (php)
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
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
<?php
include("password.php");
session_start();
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$bool = true;
mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
$query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
$exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
$table_users = "";
$table_password = "";
if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
{
while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
{
$table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
$table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
$admin = $row['admin'];
}
if ($admin == 'yes') {
if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
{
if ($password == $table_password) {
$_SESSION['user'] = $username;
$_SESSION['admin'] = $admin;
header("location: home.php");
} else {
print '<script>alert("Incorrect username!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Incorrect Password!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Acces denied!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
}
?>
include("password.php");
session_start();
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$bool = true;
mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
$query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
$exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
$table_users = "";
$table_password = "";
if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
{
while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
{
$table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
$table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
$admin = $row['admin'];
}
if ($admin == 'yes') {
if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
{
if ($password == $table_password) {
$_SESSION['user'] = $username;
$_SESSION['admin'] = $admin;
header("location: home.php");
} else {
print '<script>alert("Incorrect username!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Incorrect Password!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Acces denied!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
}
?>
Verder kan je ook prima met booleans (true/false; 1/0) werken in je database om aan te geven of iemand admin is, of niet. Gewoon een 0 (niet) of 1 (wel) gebruiken.
Verder raad ik het niet aan om de status van een admin in de sessie op te slaan. Mocht je iemand ontheffen uit zijn adminfunctie, dan zal hij eerst zijn browser af moeten sluiten. het enige wat in een sessie hoort is een status of iemand ingelogd is als boolean, en zijn userID.
Gewijzigd op 09/03/2015 22:33:21 door - Ariën -
Aar C op 09/03/2015 21:44:29:
het enige wat in een sessie hoort is een status of iemand ingelogd is als boolean.
Uhm Aar,
hoe weten we dan WIE er ingelogd is? Lijkt mij dat je toch ook een user_id opslaat in de sessie? Of als alternatief kan ik nog verzinnen dat je het sessie_id opslaat in de database in de users tabel.
Ja, en een userID hoort erin, die was ik vergeten.
Sorry, mijn veld admin staat voor 1 user op "yes" in de database (varchar):
Ik kan nu met geen enkele gebruiker meer aanloggen.
Met verkeerde username => wit scherm
Met verkeerd wachtwoord => incorrect password (lijkt me dus goed)
Met juiste credentials + admin op yes => incorrect username
Met juiste crendentials zonder admin op yes => acces denied
Code (php)
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
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
<?php
include("password.php");
session_start();
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$bool = true;
mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
$query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
$exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
$table_users = "";
$table_password = "";
if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
{
while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
{
$table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
$table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
$admin = $row['admin'];
}
if ($admin == 'yes') {
if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
{
if ($password == $table_password) {
$_SESSION['user'] = $username;
$_SESSION['admin'] = $admin;
header("location: home.php");
} else {
print '<script>alert("Incorrect username!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Incorrect Password!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Acces denied!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
}
?>
include("password.php");
session_start();
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$bool = true;
mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
$query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
$exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
$table_users = "";
$table_password = "";
if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
{
while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
{
$table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
$table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
$admin = $row['admin'];
}
if ($admin == 'yes') {
if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
{
if ($password == $table_password) {
$_SESSION['user'] = $username;
$_SESSION['admin'] = $admin;
header("location: home.php");
} else {
print '<script>alert("Incorrect username!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Incorrect Password!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Acces denied!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
}
?>
de kans dat de username niet gelijk is aan $table_users is niet zo heel groot: gezien je dit in de query al afdwingt.
Hooguit gaat hier nog wat mis mbt mysql_real_escape_string.
password_verify($password, $table_password)
geen idee wat dit doet? kijken of gehast password in database gelijk is aan de hash van het ingevoerde password (na mishandeling door mysql_real_escape_string) ?
vreemd, want daarna volgt nog een keer
if ($password == $table_password) {
dus we vallen terug op de niet gehashte versie van $password en vergelijken nog een keer.
---
doe je trouwens iets met de aanwijzingen of negeer je alles wat niet direct tot je oplossing leidt?
ik bedoel opmerkingen over eerst connecten, dan escapen, etc.
Daarnaast heb jij wel de laatste reactie van Aar gelezen?
a) mysql_connect
b) mysql_real_escape_string
In die volgorde en niet andersom.
Laat maar weten welke foutmeldingen je krijgt.
error
Notice: Undefined index: username in D:\USBWebserver v8.6\root\restaurant\checklogin.php on line 10
Notice: Undefined index: password in D:\USBWebserver v8.6\root\restaurant\checklogin.php on line 11
Code
Code (php)
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
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
<?php
include("password.php");
session_start();
$bool = true;
mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
$exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
$table_users = "";
$table_password = "";
if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
{
while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
{
$table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
$table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
$admin = $row['admin'];
}
if ($admin == 'yes') {
if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
{
if ($password == $table_password) {
$_SESSION['user'] = $username;
$_SESSION['admin'] = $admin;
header("location: home.php");
} else {
print '<script>alert("Incorrect username!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Incorrect Password!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Acces denied!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
}
?>
include("password.php");
session_start();
$bool = true;
mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
$exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
$table_users = "";
$table_password = "";
if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
{
while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
{
$table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
$table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
$admin = $row['admin'];
}
if ($admin == 'yes') {
if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
{
if ($password == $table_password) {
$_SESSION['user'] = $username;
$_SESSION['admin'] = $admin;
header("location: home.php");
} else {
print '<script>alert("Incorrect username!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Incorrect Password!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Acces denied!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
}
?>
Login pagina is niet meer dan dit:
<html>
<body>
<a href="index.php">Terug naar home </a><br/><br/>
<form action="checklogin.php" method="POST">
Vul gebruikersnaam in: <input type="text" name="username" required="required" /> <br/>
Vul wachtwoord in: <input type="password" name="password" required="required" /> <br/>
<input type="submit" value="Login"/>
</form>
</body>
</html>
Daarom raad ik aan om eerst te controleren of er gepost is:
Je moet daarom eerst isset() gebruiken om te controleren of ze aanwezig zijn
Daarnaast in het algemeen controleer je of een formulier verstuurd is door het volgende te gebruiken
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
// ahhh de gebruiker heeft waarschijnlijk een gebruikersnaam en wachtwoord ingevuld en op Login geklikt
}
?>
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
// ahhh de gebruiker heeft waarschijnlijk een gebruikersnaam en wachtwoord ingevuld en op Login geklikt
}
?>
Waar ik persoonlijk aan hekel is waarom je het formulier naar een ander PHP bestand laat sturen (checklogin.php)
Waarom laat je het attribuut action="" niet gewoon leeg zodat je op dezelfde pagina blijft? Je kunt dan namelijk direct het formulier nog een keer voorschotelen (met een foutmelding) als een gebruiker niet de goede combinatie username/password heeft ingevuld.
Eigenlijk komt het neer op mijn voorbeeld in dit topic: http://www.phphulp.nl/php/forum/topic/controle-email-adress/97365/
Kortom zorg eerst even dat je het formulier op de juiste wijze gaat afhandelen
Waarom doe je niet gewoon met Composer de bestanden binnehalen die je wilt zodat alles ook netjes te unittesten is.
Weg met procudurele PHP! En allemaal netjes OOP leren. Ookal ken je nog geen PHP, je hebt procedurele PHP niet nodig dat kan je ook leren terwijl je PHP OOP leert.
Wie is ervoor!
Iemand die zelden wat met PHP doet, en zijn tijd liever besteed aan andere zaken heeft weinig aan OOP. Daarom mogen we blij zijn dat PHP zowel procedureel als object-georienteerd kan, tot in tegenstelling van de meeste andere programmeertalen.
Aan de andere kant is het absoluut geen vereiste om een correct werkend PHP script te verkrijgen. Je kunt met procedureel hetzelfde eindresultaat bereiken. Voor de beginners vind ik het persoonlijk belangrijker dat ze de logica gaan snappen van een aantal zaken die hier bijna dagelijks aan bod komen.
Ik heb even gecheckt of die post iets verstuurd. Nu daar zit blijkbaar het probleem want er komt niets binnen.
Nochtans heeft dit script altijd gewerkt vooraleer ik begon met die hash en admin levels. Ja ik snap dat je de code ook in login.php zou kunnen maken, maar zou het nu graag zo afwerken.
Iemand een idee waarom er niets meer doorkomt?
Dit is mijn checklogin.php
Code (php)
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
64
65
66
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
64
65
66
<?php
include("password.php");
session_start();
$bool = true;
if($_SERVER['REQUEST_METHOD']=="POST")
{
print '<script>alert("niets verzonden!");</script>';
print '<script>window.location.assign("login.php");</script>';
mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
$exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
$table_users = "";
$table_password = "";
if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
{
while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
{
$table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
$table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
$admin = $row['admin'];
}
if ($admin == 'yes') {
if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
{
if ($password == $table_password) {
$_SESSION['user'] = $username;
$_SESSION['admin'] = $admin;
header("location: home.php");
} else {
print '<script>alert("Incorrect username!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Incorrect Password!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Acces denied!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
}
}
else
{
print '<script>alert("niets verzonden!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
?>
include("password.php");
session_start();
$bool = true;
if($_SERVER['REQUEST_METHOD']=="POST")
{
print '<script>alert("niets verzonden!");</script>';
print '<script>window.location.assign("login.php");</script>';
mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
$exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
$table_users = "";
$table_password = "";
if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
{
while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
{
$table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
$table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
$admin = $row['admin'];
}
if ($admin == 'yes') {
if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
{
if ($password == $table_password) {
$_SESSION['user'] = $username;
$_SESSION['admin'] = $admin;
header("location: home.php");
} else {
print '<script>alert("Incorrect username!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Incorrect Password!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Acces denied!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
}
}
else
{
print '<script>alert("niets verzonden!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
?>
Dit is mijn login.php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<html>
<head>
<title>Mijn restaurant</title>
</head>
<body>
<h2>Login Pagina</h2>
<a href="index.php">Terug naar home </a><br/><br/>
<form action="checklogin.php" method="POST">
Vul gebruikersnaam in: <input type="text" name="username" required="required" /> <br/>
Vul wachtwoord in: <input type="password" name="password" required="required" /> <br/>
<input type="submit" value="Login"/>
</form>
</body>
</html>
<head>
<title>Mijn restaurant</title>
</head>
<body>
<h2>Login Pagina</h2>
<a href="index.php">Terug naar home </a><br/><br/>
<form action="checklogin.php" method="POST">
Vul gebruikersnaam in: <input type="text" name="username" required="required" /> <br/>
Vul wachtwoord in: <input type="password" name="password" required="required" /> <br/>
<input type="submit" value="Login"/>
</form>
</body>
</html>
Aar C:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 10/03/2015 11:13:45 door - Ariën -
Op regel 11 is er juist wel iets verzonden.
regel 19 : $password = $_POST['password'];
(liever nog in de rest van je script $_POST['password'] gebruiken, maar ik verwacht dat je dan nog grotere puinhoop maakt.
op regel 38
var_dump($password);
var_dump($table_password);
Toevoeging op 10/03/2015 11:31:30:
en die dump mag evt ook tussen regel 34 en 35, mocht het niets opleveren.
Nu krijg ik de volgende melding
Parse error: syntax error, unexpected 'else' (T_ELSE) in D:\USBWebserver v8.6\root\restaurant\checklogin.php on line 53
Code (php)
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
64
65
66
67
68
69
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
64
65
66
67
68
69
<?php
include("password.php");
session_start();
$bool = true;
if($_SERVER['REQUEST_METHOD']=="POST")
{
mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
$username = mysql_real_escape_string($_POST['username']);
$password = $_POST['password'];
$query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
$exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
$table_users = "";
$table_password = "";
if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
{
while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
{
$table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
$table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
$admin = $row['admin'];
}
if ($admin == 'yes') {
if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
var_dump($password);
var_dump($table_password);
{
if ($password == $table_password) {
var_dump($password);
var_dump($table_password);
$_SESSION['user'] = $username;
$_SESSION['admin'] = $admin;
header("location: home.php");
} else {
print '<script>alert("Incorrect username!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Incorrect Password!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Acces denied!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
}
}
else
{
print '<script>alert("niets verzonden!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
?>
include("password.php");
session_start();
$bool = true;
if($_SERVER['REQUEST_METHOD']=="POST")
{
mysql_connect("localhost", "root", "usbw") or die (mysql_error()); //Connectie naar de server
mysql_select_db("first_db") or die ("Cannot connect to database"); //Connect naar de database
$username = mysql_real_escape_string($_POST['username']);
$password = $_POST['password'];
$query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
$exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
$table_users = "";
$table_password = "";
if($exists > 0) //Als er geen resultaten zijn of geen bestaande username is
{
while($row = mysql_fetch_array($query)) // Toont alle rijen van de query
{
$table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
$table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
$admin = $row['admin'];
}
if ($admin == 'yes') {
if(($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes'))// checked of er een match is
var_dump($password);
var_dump($table_password);
{
if ($password == $table_password) {
var_dump($password);
var_dump($table_password);
$_SESSION['user'] = $username;
$_SESSION['admin'] = $admin;
header("location: home.php");
} else {
print '<script>alert("Incorrect username!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Incorrect Password!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Acces denied!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
}
}
else
{
print '<script>alert("niets verzonden!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
?>
even je accolades nakijken. Een goede PHP editor helpt ook
Code (php)
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
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
<?php
include("password.php");
session_start();
$bool = true;
if ($_SERVER['REQUEST_METHOD'] == "POST") {
mysql_connect("localhost", "root", "usbw") or die(mysql_error()); //Connectie naar de server
mysql_select_db("first_db") or die("Cannot connect to database"); //Connect naar de database
$username = mysql_real_escape_string($_POST['username']);
$password = $_POST['password'];
$query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
$exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
$table_users = "";
$table_password = "";
if ($exists > 0) { //Als er geen resultaten zijn of geen bestaande username is
while ($row = mysql_fetch_array($query)) { // Toont alle rijen van de query
$table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
$table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
$admin = $row['admin'];
}
if ($admin == 'yes') {
if (($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes')) { // checked of er een match is
var_dump($password);
var_dump($table_password);
if ($password == $table_password) {
var_dump($password);
var_dump($table_password);
$_SESSION['user'] = $username;
$_SESSION['admin'] = $admin;
header("location: home.php");
} else {
print '<script>alert("Incorrect username!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Incorrect Password!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Acces denied!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
}
} else {
print '<script>alert("niets verzonden!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
?>
include("password.php");
session_start();
$bool = true;
if ($_SERVER['REQUEST_METHOD'] == "POST") {
mysql_connect("localhost", "root", "usbw") or die(mysql_error()); //Connectie naar de server
mysql_select_db("first_db") or die("Cannot connect to database"); //Connect naar de database
$username = mysql_real_escape_string($_POST['username']);
$password = $_POST['password'];
$query = mysql_query("Select * from users WHERE username='$username'"); // Query de users tabel
$exists = mysql_num_rows($query); //checked of de gebruikersnaam bestaat
$table_users = "";
$table_password = "";
if ($exists > 0) { //Als er geen resultaten zijn of geen bestaande username is
while ($row = mysql_fetch_array($query)) { // Toont alle rijen van de query
$table_users = $row['username']; // De eerste gebruikersnaam rij word doorgegeven naar $table_users, en hij doet dat tot heel de query is afgelopen
$table_password = $row['password']; // De eerste wachtwoorden rij word doorgegeven naar de $table_password, en hij doet dat tot heel de query is afgelopen
$admin = $row['admin'];
}
if ($admin == 'yes') {
if (($username == $table_users) && password_verify($password, $table_password) && ($admin == 'yes')) { // checked of er een match is
var_dump($password);
var_dump($table_password);
if ($password == $table_password) {
var_dump($password);
var_dump($table_password);
$_SESSION['user'] = $username;
$_SESSION['admin'] = $admin;
header("location: home.php");
} else {
print '<script>alert("Incorrect username!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Incorrect Password!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
} else {
print '<script>alert("Acces denied!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
}
} else {
print '<script>alert("niets verzonden!");</script>';
print '<script>window.location.assign("login.php");</script>';
}
?>
De fout was dat je na je if op lijn 34 geen { had staan, en die op een losse plek twee regels verder had staan.
Gewijzigd op 10/03/2015 12:05:07 door - Ariën -