Question

Le système bugzilla (basé sur perl) dispose d'une fonctionnalité permettant de se connecter automatiquement à l'aide d'une variable d'environnement de serveur http. Si vous indiquez le bon identifiant ou nom d'utilisateur, vous êtes automatiquement connecté.

Mon serveur exécute Joomla (basé sur PHP) et possède toutes les informations sur les personnes connectées. Il exécute bugzilla dans un sous-cadre.

Alors, comment puis-je définir cette valeur d'environnement à partir d'un script PHP?

En d'autres termes, comment le script suivant renvoie-t-il ma propre variable définie ailleurs dans une session depuis PHP:

#!/usr/bin/perl -wT
print "Content-type: text/html\n\n";
while (($key, $val) = each %ENV) {
        print "$key = $val<BR>\n";
}
Était-ce utile?

La solution

Ceci n’est qu’une hypothèse, mais (en supposant que vous utilisez Apache2), vous pouvez définir des variables d’environnement à l’aide de apache_setenv () . Cependant, cela ne durera que pendant la durée de vie de la requête http actuelle, je ne suis donc pas sûr de savoir comment le faire fonctionner - la demande de la page bugzilla depuis le cadre de votre navigateur sera considérée comme totalement distincte par Apache. Vous pouvez peut-être utiliser virtual () pour appeler une sous-demande. à Bugzilla qui devrait alors pouvoir voir cette variable d’environnement. Je ne sais pas si vous devez le faire pour chaque demande de page Bugzilla ou uniquement pour celle qui initie la connexion.

Désolé si j'ai raté le message ou si je me suis mal trompé

Autres conseils

Je ne suis pas sûr de ce que vous devez faire pour créer la session dans Bugzilla, mais je sais ce qui doit se passer à la fin de Joomla!: vous voudrez créer un plug-in utilisateur qui réponde à l'événement onLoginUser. . Pour un exemple de cela en action, jetez un œil à la fonction onLoginUser dans plugins / user / joomla.php.

(Remarque, ceci ne concerne que Joomla! 1.5)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top