Op de inlogpagina van mijn cms'je heb ik o.a. de volgende code:
Om te controleren of alles goed ga, doe ik onderaan de pagina een print_r($_SESSION).
Als ik inlog met een goede email / password combinatie, zie ik onderaan de pagina Array ( [user] => Ted Raket) , maar zodra ik naar een andere pagina binnen de site ga, wordt de sessie leeg gegooid: er staat dan Array( ). Het bizarre is alleen dat ik geen foutmelding krijg (bij error_reporting(E_ALL)). Mijn browser accepteert gewoon (session)cookies - anders zou ik ook niet op dit forum ingelogd zijn
En ook mijn Apache staat 'normaal' ingesteld; andere applicaties werken wel gewoon.
Heeft iemand een idee waar het mee te maken zou kunnen hebben? Ik heb mijn code al meerdere keren doorlopen, maar heb geen idee meer
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
| if ($_POST) { $data = $_POST['data']; $result = db_query("SELECT name, pass FROM users WHERE email = '%s'", $data['email']); if (db_num_rows($result) != 0) { $name = db_result($result, 0); $_SESSION['user'] = $name; //COM_refresh('meta', $_BASE_URL); $body .= 'ingelogd!'; } else { $body.= 'Fout tijdens inloggen<br>'.loginform(); } } else { $body.= loginform(); } function loginform() { $output = '<form method="post" action="admin"> Email: <input type="text" name="data[email]" size="20"> Password: <input type="password" name="data[password]" size="20"> <input type="submit" value="Submit" name="login"></form>'; return $output; } |
Om te controleren of alles goed ga, doe ik onderaan de pagina een print_r($_SESSION).
Als ik inlog met een goede email / password combinatie, zie ik onderaan de pagina Array ( [user] => Ted Raket) , maar zodra ik naar een andere pagina binnen de site ga, wordt de sessie leeg gegooid: er staat dan Array( ). Het bizarre is alleen dat ik geen foutmelding krijg (bij error_reporting(E_ALL)). Mijn browser accepteert gewoon (session)cookies - anders zou ik ook niet op dit forum ingelogd zijn
Heeft iemand een idee waar het mee te maken zou kunnen hebben? Ik heb mijn code al meerdere keren doorlopen, maar heb geen idee meer
"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."