Aller au contenu

Une variable de session Php dans un lien


francoisch

Sujets conseillés

Bonjour

Dans une première page, sur un site nommé fcfe2.free.fr, jinitialise une variable de session nommée $_SESSION['accueil'] à la valeur http://fcfe2.free.fr/index.php

Je navigue vers une deuxième page qui est hébergée sur un autre site nommé www.maintiendomicile.fr.

Dans cette page, jutilise la variable de session dans un lien : <a href="$_SESSION['accueil']" title= .........

Quand je clique sur le lien pour revenir dans la première page, IE, dans la zone détat, en bas, affiche :

http://www.maintiendomicile.fr/$_SESSION['accueil']

De toute évidence, IE ajoute lURL du site de résidence de la page à ma variable de session ; je voudrais, moi, que seule la valeur de ma variable de session soit utilisée.

Naturellement, le retour ne se fait donc pas comme je le souhaite.

Par avance merci de votre aide.

Francois

Lien vers le commentaire
Partager sur d’autres sites

Il y a deux soucis en fait :

1/ Il faut que tu "écrive" le contenu de la variable. Il faut donc mettre quelque chose comme : <a href="<?php echo $_SESSION['accueil']; ?>" title= .........

2/ Tu ne peux pas initialiser une variable de session sur un site et l'utiliser sur un autre ! Une variable de session c'est propre à chaque site (heureusement d'ailleurs)

Edit : Avec la solution c'est mieux.

Il faudrait passer par une variable passée en paramètre :

Dans http://fcfe2.free.fr/index.php, tu fais un lien de la forme href=&quot;http://www.maintiendomicile.fr/?accueil=fcfe2.free.fr/index.php"

Dans http://www.maintiendomicile.fr, il faut écrire alors : <a href=&quot;http://<?php echo $_GET['accueil']; ?>" title= .........

Par contre, ça reste toujours bizarre de renvoyer comme ça d'un site à l'autre

Modifié par Findel
Lien vers le commentaire
Partager sur d’autres sites

bonjour Findel et merci de ta réponse.

Comme il y a du contenu, je vais mettre qqe temps à tout digérer mais je crois comprendre l'ensemble.

Le coté qui paraît curieux s'explique, du moins pour moi: j'ai plusieurs pages qui sont communes à deux sites, chaque site ayant par ailleurs ses pages propres.

Comme je n'ai pas voulu dupliquer ces pages, pour éviter la double maintenance, ces pages communes sont hébergées sur un des deux sites.

Du deuxième site, je fais donc parfois appel à une page installée sur le premier site.

Je dois ensuite pouvoir revenir sur la page d'accueil du site par lequel le visiteur est entré.

Par ailleurs, je dois appliquer à une page commune, la feuille de style du site d'entrée ainsi que d'autres éléments spécifiques (un footer, ...).

Sinon, au sujet des variables de session, ça paraît marcher d'un site à l'autre, d'après mes essais, mais peut-être n'est ce pas garanti.

Merci encore, je m'y mets.

Francois

Lien vers le commentaire
Partager sur d’autres sites

Yes, ce serait + facile mais ces deux sites ne s'adressent pas aux mêmes types de personnes.

Simplement, une partie des sujets est commune, mais une partie seulement.

Et puis, ça m'interessait de voir comment faire ça.

Merci encore.

Francois

Lien vers le commentaire
Partager sur d’autres sites

bonjour Findel et merci de tes réponses.

Za marche, autant le passage des paramètres à l'appel que le chargement de la bonne feuille de style dans la page appellée ou le retour à la page d'accueil.

C'est probablement simple pour beaucoup mais ça n'était pas évident pour moi; merci encore.

Sinon, sur les variables de session, je comprend bien qu'elles sont écrites sur le serveur et que leur utilisation est donc impossible quand on a deux sites comme je le décrivais.

Par contre, au vu de mes essais:

- la variable de session n'est pas écrite tout de suite (je crois)

- elle doit donc rester qqepart dans les entrailles du navigateur qui, lui, est unique

- la variable serait alors commune au deux sites, du moins tant que le visiteur ne ferme pas son navigateur

tout ça sous réserve d'erreur(s) de ma part.

Juste pour comprendre l'affaire puisque j'ai suivi tes conseils et modifié mes communications en conséquence.

Merci encore.

Francois

Lien vers le commentaire
Partager sur d’autres sites

- la variable de session n'est pas écrite tout de suite (je crois)

Si si, elle est dispo dès que tu l'alimente la première fois.

- elle doit donc rester qqepart dans les entrailles du navigateur qui, lui, est unique

Elle est toujours stockée sur le serveur... Ou alors on doit pas parler de la même chose et ça me fait un peu peur. Si tu parle de l'id de session, oui il est stocké sur le navigateur s'il supporte les cookies.

- la variable serait alors commune au deux sites, du moins tant que le visiteur ne ferme pas son navigateur

tout ça sous réserve d'erreur(s) de ma part.

Ca non, on ne peut jamais "partager" des variables entre deux sites, à moins de les passer en post ou en get. Je ne sais pas comment tu as pu en arriver à la conclusion contraire, mais si tu veux en causer c'est volontier

Lien vers le commentaire
Partager sur d’autres sites

Le plus simple pour toi est de générer toi même une variable session et de la transmettre comme une variable normale entre toutes tes URL,

l'avantage c'est que même si les cookies ne sont pas supportés par le navigateur de tes visiteurs les variables seront là quand même.

Le gros inconvénient c'est le référencement, puisque chaque visiteur aura une url avec dedans une variable qui lui est propre les moteurs

d'indexation n'aime pas trop cela.

Lien vers le commentaire
Partager sur d’autres sites

  • 2 months later...

Salut,

Je me permet de poster à la suite car mon soucis semble très lié.

J'ai deux sites destinés au même public restreint (un extranet et un magazine en ligne).

Le premier codé en ASP le 2e en PHP (avec joomla)... je sais c'est bizarre, mais plusieurs webmestres sont passés par là !

L'idée : quand un membre s'est loggé à l'extranet, il doit pouvoir dans la foulée aller consulter le magazine en ligne sans resaisir ses codes.

J'ai fait beaucoup de recherches pour trouver comment faire sans trop compromettre la sécurisation des deux sites... mais avec peu de connaissances en dév je galère :wacko:

Je crois avoir compris dans cette discussion que le fait de transmettre une variable de session serait une solution.

Pouvez-vous me dire si c'est bien par là qu'il faut creuser ?

Si oui me donner quelques détails, par exemple le nom de la fonction PHP concernée pour que je sache par où commencer ?

Merci d'avance pour vos conseils :)

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...