Inlog script logt niet in
Dit is mijn eerst database script dus niet opkijken als hij vol zit met fouten.
Hij checkt of er waarde in de db gelijk is een de post waarde. Ik denk dat hij het tegenovergestelde doet.
Wat is er mis?
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
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
<?php
include ('config.php');
$squser = 'SELECT username FROM users LIMIT 1';
$squserf = mysql_fetch_array($squser);
$sqpass = 'SELECT password FROM users LIMIT 1';
$sqpassf = mysql_fetch_array($sqpass);
if($_SERVER['REQUEST_METHOD'] != 'POST') {
?>
<html>
<head>
<title>KoHoSen</title>
</head>
<body>
<form method='post'>
<input type='text' name='username' value='Gebruikersnaam'><br>
<input type='password' name='password' value='Wachtwoord'><br>
<input type='submit' name='submit' value='Inloggen'><br>
</form>
</body>
</html>
<?php
} else {
if ($squserf == $_POST['username'] AND $sqpassf == $_POST['password'])
$_SESSION['goed'] == true;
header('Location: editor/editor.php');
}
?>
include ('config.php');
$squser = 'SELECT username FROM users LIMIT 1';
$squserf = mysql_fetch_array($squser);
$sqpass = 'SELECT password FROM users LIMIT 1';
$sqpassf = mysql_fetch_array($sqpass);
if($_SERVER['REQUEST_METHOD'] != 'POST') {
?>
<html>
<head>
<title>KoHoSen</title>
</head>
<body>
<form method='post'>
<input type='text' name='username' value='Gebruikersnaam'><br>
<input type='password' name='password' value='Wachtwoord'><br>
<input type='submit' name='submit' value='Inloggen'><br>
</form>
</body>
</html>
<?php
} else {
if ($squserf == $_POST['username'] AND $sqpassf == $_POST['password'])
$_SESSION['goed'] == true;
header('Location: editor/editor.php');
}
?>
Koen Hollander
Je voert de query nergens uit.
Gewijzigd op 24/10/2012 15:44:06 door - SanThe -
Ook is de manier waarop je kijkt of iemand is ingelogd niet goed. Op dit moment voer je namelijk geen query uit.
Om een query uit te voeren gebruik je de functie mysql_query();. Als je de query hebt uitgevoerd dan kun je mysql_fetch_array(); gebruik om de waardes uit je database op te slaan in een array.
Hier is een voorbeeld van hoe ik het zou aanpakken:
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
session_start();
include ('config.php');
if($_SERVER['REQUEST_METHOD'] == 'POST') {
$userQuery = mysql_query("
SELECT
username, password
FROM
users
WHERE
username = '".mysql_real_escape_string($_POST['username'])."'
AND
password = '".mysql_real_escape_string($_POST['password'])."'
");
if(mysql_num_rows($userQuery) > 0) {
$_SESSION['loggedin'] = true;
header('location: editor/editor.php');
}
}
?>
session_start();
include ('config.php');
if($_SERVER['REQUEST_METHOD'] == 'POST') {
$userQuery = mysql_query("
SELECT
username, password
FROM
users
WHERE
username = '".mysql_real_escape_string($_POST['username'])."'
AND
password = '".mysql_real_escape_string($_POST['password'])."'
");
if(mysql_num_rows($userQuery) > 0) {
$_SESSION['loggedin'] = true;
header('location: editor/editor.php');
}
}
?>
ik zal daar eens uitgebreid naar kijken, bedankt.
in de plaats daarvan moet je query kijken in 1 rij waar de username en het wachtwoord matchen..
kijk bijvoorbeeld de query van Rick die zou wel goed zijn.