J'utilise des fonctions qui initialisent, créés, accèdent, supprime une session ou un cookie !
et je rencontre quelque chose qui n'est pas étrange mais redondant en fait :

Voilà une partie du code :
$session étant juste un tableau :
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
 
$sessionStatusValue=array(
		0=>'PHP_SESSION_DISABLED ==0 => si les sessions sont désactivées.',
		1=>'PHP_SESSION_NONE ==1 => si les sessions sont activées, mais qu\'aucune n\'existe.',
		2=>'PHP_SESSION_ACTIVE ==2 => si les sessions sont activées, et qu\'une existe.'
);
$session = array (
 
		0 => array (
			'OCRPHPJS',
			'1a',		
		),		
		1 => array (			
				session_status(),					
				$sessionStatusValue [session_status ()],
 
		),
Si je créé une session avec session_name($session[0][0]) et session_id($session[0][1]) différent avant un session_start ou pas.
A part le fait que session_status renvoie 1= (PHP_SESSION_NONE) mais il ne me créé pas de cookie session automatiquement normal puisque je n'ai pas appelé session_start()
(et PHPSESSID qui serait différent ainsi que le SID ou le id du cookie session) si c'était le cas !

Mais ensuite :
si je créé un cookie avec le même nom et la même valeur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
setMyCookie( $session[0][0],
            getMyCookie($session[0][0],$session[0][1]),
            0,
            '/',
            $domain, //localhost
            false,
            true );
Si je fais un session_start() ou pas, il fait un refresh de la page et "le cookie session" s'affiche de suite.
par contre si je code pas le cookie comme si dessus surtout pour l'option EXPIRE ou le CONTENU il me créé :

rien à cause d'EXPIRE >0 (pas de session start donc rien)
ou deuxième cookie de même nom en plus du cookie session si le nom est identique que session_name mais pas la même valeur (sinon PHPSESSID) .
autres comportement...

Ce qui me trouble un peu est que si je fais juste la manip pour le cookie avec ce code je créé une sorte de cookie session ou vraiment le cookie session ?
Et sans appeler session start() cela change bien sur juste pour le statut qui renvoie PHP_SESSION_NONE au lieu de PHP_SESSION_ACTIVE !

J'ai regardé les explications ici pour mieux comprendre mais j'ai du mal à tout digérer :
http://php.net/manual/fr/function.se...he-limiter.php
http://php.net/manual/fr/session.con...ion.auto-start
http://php.net/manual/fr/function.setcookie.php

Peut on m'aider à m’éclaircir tout ceci si les liens expliquent le comportement de ce que j'ai ? Merci à vous

(si c'est un peu confus désolé dites moi si je ne suis pas clair )

J'aurais du aussi préciser au delà de comprendre comment fonctionne les sessions et les cookies. Avant j'utilsais juste session_start() et setcookie() sans trop savoir !
Donc j'ai voulu me compliquer la vie alors j'ai voulu en local créer une zone "multi session" pour un utilisateur (avec un cookie session) sur lesquelles il pourrait "switcher" et quand il ferme le navigateur ou se déconnecte que les "mini config" de chaque session soit gardées tant qu'il n'a pas déconnecté auquel cas toutes les sessions seraient supprimées évidement aussi et tout ceci sans passer par une bdd.

J'y suis presque arrivé au mettant dans un cookie-session (pas celle généré auto encore que je modifie session_name et session_id apparemment ce n'est pas bien comme pratique) une date() ou time() et en switchant il retrouve la "mini config" de chaque session (je m'amuse avec deux pour l'instant ) avant qu'il ferme sans utiliser de bdd.