Ajouter le PHPSESSID a l'url et pas le supprimer

WRInaute occasionnel
Bonjour a tous,

Je sais, ca peut paraitre farfelu de vouloir ajouter le SID dans l'url, mais la raison est simple : Imode.

En effet, les navigateurs Imode ne gèrent pas les sessions, on est donc obligé de passer les variables dans l'url.

J'ai tout tenté, mais j'avour que pour le moment je n'ai pas reussi a ajouter automatiquement le SID a l'url sans le mettre manuellement dans le code ce qui est impossible vu les centaines d'url présentes dans le code.

la solution paraissait être l'ajout de ini_se ('session.use_trans_sid','1'); au début du code, mais cela ne rajoute pas pour autant d'identifiant de sessions dans l'url.

Je ne veux pas changer le fichier de conf php parce qu'un site web tourne dessus, je dois donc passer par ini set.

Quelqu'un a une idée?

Merci d'avance,

Thierry

P.S. : le Header Location aurait pu etre une bonne solution s'il ne renvoyait pas une erreur sur la plupart des téléphones imode...
 
WRInaute impliqué
Met aussi
session.use_only_cookies
à FALSE (0) pour essayer.

Qu'est-ce qui gêne de modifier la config de PHP ? Faut reloader Apache uniquement, pas le relancer entièrement.
 
WRInaute occasionnel
En fait, cela me genait pour les services web et non mobile, question de sécurité.

Pour le moment, j'ai trouvé une autre solution, qui me permet d'ajouter le sid dans l'url avec une fonction php.

Mais nouveau hic la encore, imode semble mal gerer les redirection 301, il me retourne une erreur : "Données invalides recues. 302".

Je me demande si ce n'est pas plutot du au téléphone, ca marche nickel sur les autres (non Imode).

pour ceux que ca interresse, voila la fonction que j'ai utilisé :


function addsid($url) {
$url = "Location: $url";
if (ereg(session_id(),$url)) {
} else {
if (ereg("\?",$url)) {
$url .= "&";
} else {
$url .= "?"; }
$url .= session_id();
header($url);
}
}


Pour le moment, je reste au point mort avec Imode.
 
Discussions similaires
Haut