sessio en cookie
Maar als ik browser opnieuw openen ik moet weer inloggen .
Waar zit ik fout ? any help welkom en hier is de code .
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
session_start(); // sessie beginnen
// controleren of pagina correct is aangeroepen.
if (!empty($_POST)){
include("inc_connect.php");
if (isset($_REQUEST['email'])) {
// Gebruikersnaam lezen uit een formulier of cookie:
if (isset($_POST['email'])) {
$gebruikersnaam = $_POST['email'];
} elseif (isset($_COOKIE['email'])) {
$gebruikersnaam = $_COOKIE['email'];
} else {
inloggen();
}
$gebruikersnaam = trim(strip_tags($gebruikersnaam));
// Wachtwoord lezen uit een formulier of cookie:
if (isset($_POST['wachtwoord'])) {
$wachtwoord = $_POST['wachtwoord'];
} elseif (isset($_COOKIE['wachtwoord'])) {
$wachtwoord = $_COOKIE['wachtwoord'];
} else {
inloggen($gebruikersnaam);
}
$wachtwoord = trim(strip_tags($wachtwoord));
$verloopt_op = time() + 7776000;
// Gebruikersnaam opslaan in een cookie:
setcookie("email", $gebruikersnaam, $verloopt_op);
// Wachtwoord naar keuze opslaan in een cookie:
if (isset($_POST['wo'])) {
if ($_POST['wo'] == 1) {
setcookie("wachtwoord", $wachtwoord, $verloopt_op);
}
}
// Gebruikersnaam lezen uit een formulier of cookie:
$query = "SELECT * FROM users
WHERE email='" . $_POST["email"] ."'
AND wachtwoord='". $_POST["wachtwoord"]. "'";
$result = mysql_query($query) or die("FOUT : " . mysql_error());
if (mysql_num_rows($result) > 0){
// e-mailadres gevonden, registreer gegevens in session
$username = $_POST["email"];
$wachtwoord = $_POST["wachtwoord"];
session_register("username");
session_register("wachtwoord");
header("Location: beveiligd.php");
exit();
}else{
// geen e-mail adres gevonden, of ongeldig wachtwoord.
$tekst = "U hebt geen geldige combinatie van e-mailadres en
wachtwoord opgegeven. Maak een keuze: <br>
<a href=\"login.php\">Opnieuw inloggen</a><br>
<a href=\"register.php\">Hier registreren</a><br>";
die($tekst);
}
}else{
// pagina was incorrect aangeroepen, direct doorsturen naar login.php
header("Location: login.php");
}
?>
session_start(); // sessie beginnen
// controleren of pagina correct is aangeroepen.
if (!empty($_POST)){
include("inc_connect.php");
if (isset($_REQUEST['email'])) {
// Gebruikersnaam lezen uit een formulier of cookie:
if (isset($_POST['email'])) {
$gebruikersnaam = $_POST['email'];
} elseif (isset($_COOKIE['email'])) {
$gebruikersnaam = $_COOKIE['email'];
} else {
inloggen();
}
$gebruikersnaam = trim(strip_tags($gebruikersnaam));
// Wachtwoord lezen uit een formulier of cookie:
if (isset($_POST['wachtwoord'])) {
$wachtwoord = $_POST['wachtwoord'];
} elseif (isset($_COOKIE['wachtwoord'])) {
$wachtwoord = $_COOKIE['wachtwoord'];
} else {
inloggen($gebruikersnaam);
}
$wachtwoord = trim(strip_tags($wachtwoord));
$verloopt_op = time() + 7776000;
// Gebruikersnaam opslaan in een cookie:
setcookie("email", $gebruikersnaam, $verloopt_op);
// Wachtwoord naar keuze opslaan in een cookie:
if (isset($_POST['wo'])) {
if ($_POST['wo'] == 1) {
setcookie("wachtwoord", $wachtwoord, $verloopt_op);
}
}
// Gebruikersnaam lezen uit een formulier of cookie:
$query = "SELECT * FROM users
WHERE email='" . $_POST["email"] ."'
AND wachtwoord='". $_POST["wachtwoord"]. "'";
$result = mysql_query($query) or die("FOUT : " . mysql_error());
if (mysql_num_rows($result) > 0){
// e-mailadres gevonden, registreer gegevens in session
$username = $_POST["email"];
$wachtwoord = $_POST["wachtwoord"];
session_register("username");
session_register("wachtwoord");
header("Location: beveiligd.php");
exit();
}else{
// geen e-mail adres gevonden, of ongeldig wachtwoord.
$tekst = "U hebt geen geldige combinatie van e-mailadres en
wachtwoord opgegeven. Maak een keuze: <br>
<a href=\"login.php\">Opnieuw inloggen</a><br>
<a href=\"register.php\">Hier registreren</a><br>";
die($tekst);
}
}else{
// pagina was incorrect aangeroepen, direct doorsturen naar login.php
header("Location: login.php");
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Reza
Ik zie nergens waar jij controlleert op een cookie. Je cookie wordt wel gemaakt. Maar je controlleert er nergens op.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?
if (isset($_POST['email'])) {
$gebruikersnaam = $_POST['email'];
} elseif (isset($_COOKIE['email'])) {
$gebruikersnaam = $_COOKIE['email'];
} else {
inloggen();
}
$gebruikersnaam = trim(strip_tags($gebruikersnaam));
// Wachtwoord lezen uit een formulier of cookie:
if (isset($_POST['wachtwoord'])) {
$wachtwoord = $_POST['wachtwoord'];
} elseif (isset($_COOKIE['wachtwoord'])) {
$wachtwoord = $_COOKIE['wachtwoord'];
} else {
inloggen($gebruikersnaam);
?>
if (isset($_POST['email'])) {
$gebruikersnaam = $_POST['email'];
} elseif (isset($_COOKIE['email'])) {
$gebruikersnaam = $_COOKIE['email'];
} else {
inloggen();
}
$gebruikersnaam = trim(strip_tags($gebruikersnaam));
// Wachtwoord lezen uit een formulier of cookie:
if (isset($_POST['wachtwoord'])) {
$wachtwoord = $_POST['wachtwoord'];
} elseif (isset($_COOKIE['wachtwoord'])) {
$wachtwoord = $_COOKIE['wachtwoord'];
} else {
inloggen($gebruikersnaam);
?>
hier controlleert
Gewijzigd op 01/01/1970 01:00:00 door reza
Brengt duidelijk naar voren wat er wel gebeurd en wat niet. Ook raad ik aan Nederlandse zinnen te gebruiken. "Hier controlleert" is geen zin.
verder doe je dit: session_register("username"); volgens mij is dit oude methode, je gebruikt wel $_COOKIE dat kan ook voor sessies, $_SESSION['username'] = $username.
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent
En zet die 2 regels eens meteen onder de regel met session_start();
ja .
Ik snap niet wat bedoel je ?