Session probleem gaat naar ELSE terwijl de sessie gewoon bestaat
Login.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
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
<?php
require_once('config.php');
if(isset($_POST['userName']))
{
$userName = mysql_real_escape_string($_POST['userName']);
$password = md5(mysql_real_escape_string($_POST['password']));
$selectUser = "SELECT
db_user.id,
db_user.UserName,
db_user.Password
FROM
db_user
WHERE
db_user.UserName = '".$userName."' AND
db_user.Password = '".$password."'
Limit 1";
$resultUser = mysql_query($selectUser);
$aantal_bedrijven=mysql_num_rows($resultUser);
if($aantal_bedrijven >0)
{
while($rowUser = mysql_fetch_array($resultUser))
{
header('Location: http://www.puurdb.nl/winkels/puuroranje/index2.php');
echo 'U bent ingelogd';
$_SESSION['user']=$rowUser['id'];
}
}
else
{
echo('Verkeerd wachtwoord.');
}
}
else
{
echo '
<form action="login.php" method="post">
<div class="login"> Gebruiksnaam <input type="text" name="userName"></br>
<div class="login"> Wachtwoord <input type="password" name="password"></br>
<input type="submit" value="submit" name="submit">
</form>
';
}
?>
require_once('config.php');
if(isset($_POST['userName']))
{
$userName = mysql_real_escape_string($_POST['userName']);
$password = md5(mysql_real_escape_string($_POST['password']));
$selectUser = "SELECT
db_user.id,
db_user.UserName,
db_user.Password
FROM
db_user
WHERE
db_user.UserName = '".$userName."' AND
db_user.Password = '".$password."'
Limit 1";
$resultUser = mysql_query($selectUser);
$aantal_bedrijven=mysql_num_rows($resultUser);
if($aantal_bedrijven >0)
{
while($rowUser = mysql_fetch_array($resultUser))
{
header('Location: http://www.puurdb.nl/winkels/puuroranje/index2.php');
echo 'U bent ingelogd';
$_SESSION['user']=$rowUser['id'];
}
}
else
{
echo('Verkeerd wachtwoord.');
}
}
else
{
echo '
<form action="login.php" method="post">
<div class="login"> Gebruiksnaam <input type="text" name="userName"></br>
<div class="login"> Wachtwoord <input type="password" name="password"></br>
<input type="submit" value="submit" name="submit">
</form>
';
}
?>
Index.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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
include('config.php');
require_once('header.php');
if(isset($_SESSION['user']))
{
include('functions.php');
// VERDERE IF RESULTS
}
else
{
include('functions.php');
include('login.php');
}
require_once('footer.php');
?>
include('config.php');
require_once('header.php');
if(isset($_SESSION['user']))
{
include('functions.php');
// VERDERE IF RESULTS
}
else
{
include('functions.php');
include('login.php');
}
require_once('footer.php');
?>
Suggesties/tips zijn altijd welkom ;)
Toevoeging op 15/11/2010 15:52:24:
bij login.php ook session starten
Het werkt bedankt! Maar raar dat dit niet hoeft bij mijn andere login script (de login pagina). Verder alsnog bedankt!
Op het moment dat je een waarde uit de $_SESSION wilt gebruiken of wilt toevoegen moet eerst de sessie gestart worden in je script.
Je hebt in je index.php de login.php als include, dus als je in index.php al de sessie hebt gestart dan is deze ook in je login.php beschikbaar.
Misschien moet je overwegen om niet include maar juist require te gebruiken. Als de pagina (om wat voor reden dan ook) niet beschikbaar is wordt deze overgeslagen bij een include. Is het een require dan volgt er een error aangezien deze required (vereist) is!
Succes!