Sessie rechten werkt niet
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
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
<?php
session_start();
include('inc/database.php');
if ($_SERVER ['REQUEST_METHOD'] == 'POST') {
$gebr = ($_POST['gebruikersnaam']);
$ww = (addslashes(sha1($_POST["wachtwoord"])));
$recht = '';
$query = "SELECT recht,gebruikersnaam,wachtwoord FROM gebruikers WHERE gebruikersnaam='".mysql_real_escape_string($gebr)."' AND wachtwoord='".mysql_real_escape_string($ww)."'";
$result = mysql_query($query);
$aantal = mysql_fetch_array($result);
if($aantal[0] == true){
$_SESSION['gebr']=$gebr;
$_SESSION['recht']=$recht;
header("location: Control.php");
exit;
}else {
echo '<FONT COLOR="red">U heeft u gegevens verkeerd ingevuld!!</font>';
}
}
?>
session_start();
include('inc/database.php');
if ($_SERVER ['REQUEST_METHOD'] == 'POST') {
$gebr = ($_POST['gebruikersnaam']);
$ww = (addslashes(sha1($_POST["wachtwoord"])));
$recht = '';
$query = "SELECT recht,gebruikersnaam,wachtwoord FROM gebruikers WHERE gebruikersnaam='".mysql_real_escape_string($gebr)."' AND wachtwoord='".mysql_real_escape_string($ww)."'";
$result = mysql_query($query);
$aantal = mysql_fetch_array($result);
if($aantal[0] == true){
$_SESSION['gebr']=$gebr;
$_SESSION['recht']=$recht;
header("location: Control.php");
exit;
}else {
echo '<FONT COLOR="red">U heeft u gegevens verkeerd ingevuld!!</font>';
}
}
?>
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
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
<?php
session_start();
if(!isset($_SESSION['gebr']) || $_SESSION['gebr'] == "")
elseif(!isset($_SESSION['recht']) || $_SESSION['recht'] == "")
{
header('Location: login.php');
}
$recht = $_SESSION['recht'];
if ($recht == '1')
{
echo'<li><a href="#">Verkoop</a>';
echo'<ul>';
echo'<li><a href="AddingTruck.php">Nieuw</a></li>';
echo'<li><a href="Stocklist.php">overzicht</a></li>';
echo'</ul>';
echo'<li><a href="#">Overige</a>';
echo'<ul>';
echo'<li><a href="NewUser.php">Nieuwe gebruiker</a></li>';
echo'<li><a href="changePassword.php">Wachtwoord wijzigen</a></li>';
echo'</ul>';
}
else
{
echo'<li><a href="#">Verkoop</a>';
echo'<ul>';
echo'<li><a href="AddingTruck.php">Nieuw</a></li>';
echo'<li><a href="Stocklist.php">overzicht</a></li>';
echo'</ul>';
echo'<li><a href="#">Overige</a>';
echo'<ul>';
echo'<li><a href="changePassword.php">Wachtwoord wijzigen</a></li>';
echo'</ul>';
}
?>
session_start();
if(!isset($_SESSION['gebr']) || $_SESSION['gebr'] == "")
elseif(!isset($_SESSION['recht']) || $_SESSION['recht'] == "")
{
header('Location: login.php');
}
$recht = $_SESSION['recht'];
if ($recht == '1')
{
echo'<li><a href="#">Verkoop</a>';
echo'<ul>';
echo'<li><a href="AddingTruck.php">Nieuw</a></li>';
echo'<li><a href="Stocklist.php">overzicht</a></li>';
echo'</ul>';
echo'<li><a href="#">Overige</a>';
echo'<ul>';
echo'<li><a href="NewUser.php">Nieuwe gebruiker</a></li>';
echo'<li><a href="changePassword.php">Wachtwoord wijzigen</a></li>';
echo'</ul>';
}
else
{
echo'<li><a href="#">Verkoop</a>';
echo'<ul>';
echo'<li><a href="AddingTruck.php">Nieuw</a></li>';
echo'<li><a href="Stocklist.php">overzicht</a></li>';
echo'</ul>';
echo'<li><a href="#">Overige</a>';
echo'<ul>';
echo'<li><a href="changePassword.php">Wachtwoord wijzigen</a></li>';
echo'</ul>';
}
?>
Gewijzigd op 05/12/2011 09:56:13 door Dirk Renes
En dat zet je in de session $_SESSION['recht']=$recht;
Dus er zal weinig te zien zijn in een echo.
komt omdat je op regel 10 $recht vult met niks. Verder in vul je het ook niet
- SanThe - op 05/12/2011 10:16:26:
Eerst doe je $recht = '';
En dat zet je in de session $_SESSION['recht']=$recht;
Dus er zal weinig te zien zijn in een echo.
En dat zet je in de session $_SESSION['recht']=$recht;
Dus er zal weinig te zien zijn in een echo.
Ja dat had ik onlangs ook ontdekt, en aangepast, verder print die met print_r wel het recht alleen ik krijg hem niet in een echo.
En <FONT COLOR="red"> is ook een beetje verouderd hè ;-)
Toevoeging op 05/12/2011 10:19:11:
- Aar - op 05/12/2011 10:17:59:
En <FONT COLOR="red"> is ook een beetje verouderd hè ;-)
oké, ga ik ook wat mee doen om de kleur te genereren
Dirk Renes op 05/12/2011 10:17:55:
Ja dat had ik onlangs ook ontdekt, en aangepast, verder print die met print_r wel het recht alleen ik krijg hem niet in een echo.
Plaats je een array in $_SESSION['recht']? Die zijn nooit met een echo te tonen, maar wel met een print_r (voor debugging).
nee ik had het met print_r result gedaan.
Wat is de output van print_r($_SESSION['recht'])?
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resourc
Gewijzigd op 05/12/2011 15:04:29 door Dirk Renes
je foutafhandeling voor je query mist
Vincent Huisman op 05/12/2011 15:24:45:
je foutafhandeling voor je query mist
De tabel in de database was het probleem, en foutafhandeling is toegevoegd
Toevoeging op 06/12/2011 15:52:33:
- Aar - op 05/12/2011 10:35:39:
Dat is om in ontwikkelomgevingen om een array te tonen. Dus blijkbaar zit er in $_SESSION['recht'] een array.
Wat is de output van print_r($_SESSION['recht'])?
Wat is de output van print_r($_SESSION['recht'])?
Die geeft gewoon 1 als output.
Heeft iemand nog een idee?
En var_dump($_SESSION['recht']);
- Aar - op 06/12/2011 19:28:33:
En var_dump($_SESSION['recht']);
Ik heb het voor elkaar gekregen, door een beetje creatief te zijn.
Oplossing:
$_SESSION['recht']=$aantal['recht'];
Gewijzigd op 06/12/2011 20:15:20 door Dirk Renes