Oui entre temps j’ai fait des modifications pour faire un test sans le header('Location...).
Voici mon code de la page1.php :
Celui de la page2.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <?php // PAS d'ESPACE AVANT ! if( session_id()=='' ){ session_start(); $message = 'session fonctionne'; } else { $message = 'session ne fonctionne pas'; } header('Content-type:text/html; charset=UTF-8'); // encodage UTF-8 //header('Location: page1.php'); /* N'oubliez jamais que header() doit être appelée avant que le moindre contenu ne soit envoyé, soit par des lignes HTML habituelles dans le fichier, soit par des affichages PHP. Une erreur très classique est de lire un fichier avec include ou require, et de laisser des espaces ou des lignes vides, qui produiront un affichage avant que la fonction header() ne soit appelée. Le même problème existe avec les fichiers PHP/HTML standards. */ error_reporting(E_ALL); // en TEST !! ?> <!DOCTYPE HTML> <html> <head> <!-- <meta http-equiv="content-type" content="text/html; charset=utf-8" /> --> <meta charset="utf-8"> <meta name="author" content="" /> <meta name="copyright" content="Le contenu de ce site est protégé par les droits d'auteur." /> <meta name="description" content="Description complete (pas trop long)"> <!-- On peut/DOIT mettre une description dans CHAQUE PAGE (qu'on veut référencer), MAIS il faut une description DIFFERENTE pour chaque. --> <meta name="keywords" content="" /> <title>CESSION page 1</title> </head> <!-- ==================================================================================================================== CESSION PHP http://php.net/manual/fr/function.session-start.php http://www.developpez.net/forums/forumdisplay.php?f=239]Sessions http://php.net/manual/fr/function.session-start.php ========================================================================================================================= --> <body> <?php echo 'Page numéro 1 ' . $message . '</br>'; $_SESSION['favcolor'] = 'vert'; echo 'Couleur : ' . $_SESSION['favcolor']; echo '<br /><a href="page2.php?' . SID . '">page 2</a>'; /* Pour les utilisateur de "Free.fr" et pour utiliser les sessions, vous devez créer un dossier nommé sessions (au pluriel) à la racine de votre site par l'intermediaire de votre ftp. */ ?> </body> </html>
Evidement vous ne possédez pas le don de voyance ! milles excuses.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <?php // PAS d'ESPACE AVANT ! if( session_id()=='' ){ session_start(); $message = 'session fonctionne'; } else { $message = 'session ne fonctionne pas'; } header('Content-type:text/html; charset=UTF-8'); // encodage UTF-8 error_reporting(E_ALL); // en TEST !! ?> <!DOCTYPE HTML> <html> <head> <!-- <meta http-equiv="content-type" content="text/html; charset=utf-8" /> --> <meta charset="utf-8"> <meta name="author" content="" /> <meta name="copyright" content="Le contenu de ce site est protégé par les droits d'auteur." /> <meta name="description" content="Description complete (pas trop long)"> <!-- On peut/DOIT mettre une description dans CHAQUE PAGE (qu'on veut référencer), MAIS il faut une description DIFFERENTE pour chaque. --> <meta name="keywords" content="" /> <title>CESSION page 2</title> </head> <!-- ==================================================================================================================== CESSION PHP http://forum.php france.com/php-debutant/garder-memoire-valeur-champ-t31486.html http://php.net/manual/fr/function.session-start.php http://www.developpez.net/forums/forumdisplay.php?f=239]Sessions http://php.net/manual/fr/function.session-start.php ========================================================================================================================= --> <body> <?php echo 'Page numéro 2 ' . $message . '</br>'; echo 'Couleur : ' . $_SESSION['favcolor']; /* foreach($_SESSION as $cle => $_SESSION['favcolor']) { echo " <li><strong>".ucfirst($cle)." : </strong><em>". "Couleur : " . $_SESSION['favcolor']."</em></li>\n"; } */ //echo '<br /><a href="page1.php">page 1</a>'; // Fonctionne si le cookie a été accepté // Ou bien, en indiquant explicitement l'identfiant de session // header('Location: page1.php'); // Ne change rien à l'affichage de la page2.php qui ne fontionne pas ! echo '<br /><a href="page1.php?' . SID . '">page 1</a>'; /* Pour les utilisateur de "Free.fr" et pour utiliser les sessions, vous devez créer un dossier nommé sessions (au pluriel) à la racine de votre site par l'intermediaire de votre ftp. */ ?> </body> </html>
Partager