Fout in session
Als ik op deze specifieke pagina terecht kwam kon ik alles gewoon normaal zien. Maar als ik dan op een link klik om weer weg te gaan van die pagina of als ik die pagina refresh, logt hij in één keer uit. Dit deed hij alleen online, maar niet op de USBWebserver die ik gebruik, daar deed hij het gewoon normaal.
Dus ik denk: ik ga die pagina even opnieuw opbouwen...
Ik ben nog niet half klaar, en er gebeurt weer iets raars...
Als ik weer op die pagina kom is alles goed (online dus), maar als ik refresh of op een link klik naar een ander pagina, logt hij niet uit, maar hij verandert de user op de één of andere manier...
De usernaam wordt opgeslagen als een $_SESSION variabele wanneer je inlogt en deze laat ik ook de hele tijd zien. Vandaar dat je ziet dat hij verandert.
Wat ik denk is dat er iets gebeurt met de SESSION, voorheen werd je uitgelogt, nu verandert hij de session naam.
Weet iemand hier raad mee, een oplossing te bieden o.i.d?
Paul
Gewijzigd op 09/06/2011 11:31:44 door Paul Oosting
laat eens wat code zien. Gebruik je trouwens unset voor het uitloggen?
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
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
<?
if ($_POST['actie']=='Opslaan'){
include "../database.php";
}
else{
include "database.php";
$filiaal=$_SESSION['filiaal'];
$sql="SELECT naam,user_id FROM medewerkers WHERE filiaal='$filiaal'";
$r=mysql_query($sql);
echo"
<table cellspacing='0'>
<tr>
<th>
Verantwoordelijke
</th>
<th>
Taken
</th>
<th>
Omschrijving
</th>
</tr>
<tr>
<td class='border-left border-bottom'>";
while ($row=mysql_fetch_array($r)){
$id=$row['user_id'];
$naam=$row['naam'];
echo "<a href='index.php?page=taken/overzicht&map=taken&id=$id'>".$naam."</a><br>";
}
echo"
</td>
</tr>
</table>
";
}
?>
if ($_POST['actie']=='Opslaan'){
include "../database.php";
}
else{
include "database.php";
$filiaal=$_SESSION['filiaal'];
$sql="SELECT naam,user_id FROM medewerkers WHERE filiaal='$filiaal'";
$r=mysql_query($sql);
echo"
<table cellspacing='0'>
<tr>
<th>
Verantwoordelijke
</th>
<th>
Taken
</th>
<th>
Omschrijving
</th>
</tr>
<tr>
<td class='border-left border-bottom'>";
while ($row=mysql_fetch_array($r)){
$id=$row['user_id'];
$naam=$row['naam'];
echo "<a href='index.php?page=taken/overzicht&map=taken&id=$id'>".$naam."</a><br>";
}
echo"
</td>
</tr>
</table>
";
}
?>
als je hier refresht, verandert hij dus de $_SESSION naam.
Deze pagina, heet overzicht.php. In de index.php include ik deze pagina die hij uit een $_GET haalt: index.php?page=overzicht.php , de index is zeg maar de opmaak.
En in de database.php staat session_start()
Gewijzigd op 09/06/2011 11:44:47 door Paul Oosting
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
//rest
?>
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
//rest
?>
Dit (regel 3):
include "../database.php";
is niet dit (regel 8):
include "database.php";
Gewijzigd op 09/06/2011 11:54:47 door - SanThe -
En die erroreporting, is dat het zelfde als error_reporting(2); ?
Paul Oosting op 09/06/2011 12:01:07:
is dat het zelfde als error_reporting(2); ?
Geen idee.
van error_reporting, niks ernstigs dus
Kun je het stukje van regel 1 tot 10 even heirheen kopieren?
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
if ($_POST['actie']=='Opslaan'){
include "../database.php";
// hier moet wat mysql komen e.d.
}
?>
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
if ($_POST['actie']=='Opslaan'){
include "../database.php";
// hier moet wat mysql komen e.d.
}
?>
Gewijzigd op 09/06/2011 12:21:48 door Paul Oosting
Bovendien, waarom zo'n ophef over die POST, er is iets met me SESSIONS, tenminste dat denk ik
Gewijzigd op 09/06/2011 12:26:15 door Paul Oosting
Paul Oosting op 09/06/2011 12:15:41:
Notice: Undefined index: actie in /home/belplaats/domains/belplaats.nl/public_html/beta/taken/overzicht.php on line 6
van error_reporting, niks ernstigs dus
van error_reporting, niks ernstigs dus
Dat is waarschijnlijk deze regel:
if ($_POST['actie']=='Opslaan'){
Dan bestaat $_POST['actie'] niet. Of er is niks gepost.
Paul Oosting op 09/06/2011 12:25:22:
Maar dat komt op hetzelfde neer
Bovendien, waarom zo'n ophef over die POST, er is iets met me SESSIONS, tenminste dat denk ik
Bovendien, waarom zo'n ophef over die POST, er is iets met me SESSIONS, tenminste dat denk ik
Paul Oosting op 09/06/2011 12:25:22:
Maar dat komt op hetzelfde neer
Bovendien, waarom zo'n ophef over die POST, er is iets met me SESSIONS, tenminste dat denk ik
Bovendien, waarom zo'n ophef over die POST, er is iets met me SESSIONS, tenminste dat denk ik
nee je controleert niet op hij bestaat, en wat santhe zegt misschien eerst kijken of het formulier wel gepost is?
Jij controleert met dat stukje code niet of de waarde van $_POST['actie'] opslaan is dus dat gaat al helemaal niet werken voor hem.
Dennis meijer op 09/06/2011 12:28:03:
@gerhard l
Jij controleert met dat stukje code niet of de waarde van $_POST['actie'] opslaan is dus dat gaat al helemaal niet werken voor hem.
Jij controleert met dat stukje code niet of de waarde van $_POST['actie'] opslaan is dus dat gaat al helemaal niet werken voor hem.
misschien eerst lezen wat erbij staat?
Stop met het gezeik over mijn POST, het gaat om iets anders hier
Het gaat om het gene wat SanThe zei. Je $_POST heeft niet de juiste naam of heeft geen waarde. Verder kan ik niks bedenken wat die fout inhoud.
@gerhard
Ik bedoelde je eerste post waar je if($_POST['actie']){ deed.
Doordat de $_POST niet klopt kan het zijn dat ie de include niet goed doet. En dan is er geen session.
Dennis meijer op 09/06/2011 12:31:40:
@Paul
Het gaat om het gene wat SanThe zei. Je $_POST heeft niet de juiste naam of heeft geen waarde. Verder kan ik niks bedenken wat die fout inhoud.
@gerhard
Ik bedoelde je eerste post waar je if($_POST['actie']){ deed.
Het gaat om het gene wat SanThe zei. Je $_POST heeft niet de juiste naam of heeft geen waarde. Verder kan ik niks bedenken wat die fout inhoud.
@gerhard
Ik bedoelde je eerste post waar je if($_POST['actie']){ deed.
ja dus zeg ik lezen wat er bij staat, hij krijgt undefined index actie, dus form niet geplaats of niets ingevuld dus zeg ik if($_POST['actie']) en hij moet dus controleren of form gepost is if($_SERVER['REQUEST_METHOD'] == 'POST') maarja zelf heeft hij er toch geen zin in volgens mij...
Tja we geven hem de oorzaak dus hij moet zelf kiezen wat hij ermee doet.