Page 1 sur 5

Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 12:18
par Maxou88100
Bonjour ! Voici mon problème un peu tordu ! :?

J'ai deux sites web, site A et site B.
Sur le site A, j'ai un identifiant de session que j'aimerais récupérer sur le site B !
Pour cela, je créer une page sur mon site A qui fait ceci:
session_start();
echo session_id();
Ce qui m'affiche donc un ID:

Code : Tout sélectionner

05040azd0a6da65zd0a6zd05a0 Par exemple :p
Simple jusque là! Maintenant, j'aimerais récupérer cet identifiant sur le site B et c'est là que ça se corse ! J'utilise pour cela file_get_contents() pour pouvoir ainsi lire l'id de la session et le récupérer ! Sur une page de mon site B je fais donc le code suivant:
echo file_get_contents('http://www.siteA.com/sessionID.php');
Mais là, j'obtiens un autre identifiant ! Et à chaque fois que je rafraichis j'obtiens un ID différent !

Code : Tout sélectionner

azdaf6f1sef9z8e1f6sq5f1e6f5 azefôinqsdgionhrthrth65516651 zefzrgusdngwôrgndrgdrg554zrg ...
:(
Ce qui est dans un sens normal car le navigateur me prends pour un utilisateur différent !

Ma question:
Comment est il possible de me faire passer pour l'utilisateur à qui possède cette variable de session dans le but de la récupérer ? Où comment puis récupérer l'ID 05040azd0a6da65zd0a6zd05a0 ?

Mon but n'est pas de pirater ou autre mais simplement de faire un système qui permettrait à un utilisateur de rester connecter lorsqu'il switch d'un site à l'autre :D

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 13:31
par stealth35
si l'utilisateur n'a pas sa session, remplis tu va la chercher sur un autre site (file_get_contents) avec la session serializer, tu deserialize les données et tu le mets dans la session de l'autre site :wink:

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 13:37
par Maxou88100
Je vais tester ça :p
Merci pour l'idée :D

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 14:06
par Maxou88100
J'ai essayé et à priori ça ne change rien :(

Sur mon site A:
<?php 
session_start();
$id = session_id();
echo $serializeId = serialize($id);
?>
J'obtiens cela:

Code : Tout sélectionner

s:32:"74577esdfghj4696de21cce113c0f88b";
Normal ...

Et sur mon site B:
<?php 
session_start();
echo session_id();
echo "<br/>";
$id = file_get_contents('http://siteB.com/sessionIdTest.php');
echo $unSerializeId = unserialize($id);
?>
Et j'obtiens des id différentes à chaque rafraichissement :(

Code : Tout sélectionner

9a1zda9z15d651fze65198e156ga5165f0a320 af651ds6f51zf651gt651hty56j1d65fv1s61e5 fzef651sd5g6r1zg6sd1gz98g81zrg51s6dfg51 ...
Alors que je voulais
74577esdfghj4696de21cce113c0f88b

Qu'ai je oublié ?

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 14:13
par stealth35
la session_id c'est la seule chose que tu peux pas récupérer, puisque qu'il le créer automatiquement, mais le principale c'est de recuperé le reste non ? pourquoi t'as besion de l'id ?

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 14:23
par Maxou88100
En gros je veux les identifiants de connexion pour pouvoir être connecté sur deux sites en même temps. En plus de cela je veux récupérer les variables de session pour mon panier(Système d'achat) ! Il y a vraiment beaucoup de variables de sessions :(

L'avantage de session_id c'est que si je réussi à le récupérer ben je pourrais accéder à toutes mes variables ! j'ai essayé de rentrer directement l'id de session de mon site A:

Code : Tout sélectionner

1961fz98f1e56f1aea9f1a6e5f1a651c6ae
A la place de l'identifiant de mon site B de cette forme:

Code : Tout sélectionner

session_id(1961fz98f1e56f1aea9f1a6e5f1a651c6ae);
Et ça marche très bien ! Après je vais un var_dump[$_SESSION] et je récupère toutes mes variables ! Le problème est que c'est statique et je voudrai l'adapter en faisant comme je t'ai montré plus haut :/

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 14:25
par stealth35
avec la serialize tu recuperer tout le reste je vois pas ou est le soucis #-o

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 14:31
par Maxou88100
Pourrais tu m'expliquer comment faire ? Je vois pas comment faire ? Tu veux que je sérialise mes $_SESSION ? Mais comment faire si je ne peux même pas récupérer l'ID

Désolé c'est la première fois que je travail avec sérialise et que j'essaye de passer des variables d'un domaine à l'autre :(

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 14:34
par stealth35
pas de soucis, tout a l'heure c'etait tres bien ce que t'as fais, sauf qu'il faut faire ca

site A:
session_start();
echo serialize($_SESSION);
site B
session_start();
$session  = file_get_contents('http://siteB.com/sessionIdTest.php');
$data     = unserialize($_SESSION);
$_SESSION = $data;
var_dump($data);

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 14:38
par Maxou88100
J'essaye tout de suite !

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 14:46
par Maxou88100
Toujours pas !

Site a:
session_start();
echo $serializeId = serialize($_SESSION);
Résultat:
a:2:{s:7:"SESSION";a:4:{s:6:"user";O:6:"user":2:{s:8:"panier";a:0:{....

Donc ça marche !

Mais quand je désérialise sur le site B:
$session  = file_get_contents('http://siteB.com/sessionIDTest.php');
$data     = unserialize($session);
$_SESSION = $data;
var_dump($data);
Résultat:

Code : Tout sélectionner

array(0) { }

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 14:53
par stealth35
bizar, tu bosses en E_STRICT ?

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 14:57
par Maxou88100
Non ! :(

Le problème ne viendrait t-il pas du fait que je demande les identifiants de session sans préciser l'id ? :/

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 15:00
par Maxou88100
Je viens de test sur le même site , du site A vers le site A et ça fait le même problème :(

Re: Conserver sa session_id() d'un site à un autre !

Posté : 29 mars 2010, 15:00
par stealth35
devrai pas y'avoir de soucis, envoie la chaine entière je vais regardé