Problème d'une variable locale -> globale dans 1 même scr
Posté : 08 oct. 2005, 22:22
Bonjour,
Je suis bloqué dans l'un de mes scripts. Malgré mes recherches, je ne parviens é rien. Je vous l'illustre ci-dessous dans un code simplifié:
Admettons que j'aie, dans ma page, une variable définie dans une fonction de type :
Si le profil est celui d'un homme, la variable motcle prend la valeur "slip", sinon elle devient "soutien-gorge".
Maintenant, imaginons que je souhaite insérer cette valeur parmi les mots clés de la page... afin de faire une page à mots-clés dynamiques.
Problème: La variable motcle est une variable locale. Je ne peux donc l'utiliser en dehors de la fonction. J'ai donc essayé d'en faire une variable globale ainsi:
Ceci fonctionne. En effet, si je fais un
echo $motcleGlobal après la fonction où la variable a été définie, j'ai bien "slip" ou "soutien-gorge" qui s'affiche. Par contre, si je fais un echo $motcleGlobal avant la fonction, plus rien ne s'affiche. Comme vous l'avez compris, je veux afficher cette variable dans la balise "keywords", c'est à dire dans le head de la page. Je pourrais placer la fonction dans le head, avant la balise keywords, mais j'aimerais une autre solution. Car ma véritable fonction appelle des include et je ne souhaite rien placer avant mes balises title, keywords, etc. (question de référencement).
Qui peut me proposer une autre solution? Si possible, je ne souhaiterais pas utiliser de variable session car je n'ai besoin de cette variable que dans une seule et même page. :rougit:
Un grand merci d'avance de votre aide.
Je suis bloqué dans l'un de mes scripts. Malgré mes recherches, je ne parviens é rien. Je vous l'illustre ci-dessous dans un code simplifié:
Admettons que j'aie, dans ma page, une variable définie dans une fonction de type :
Code : Tout sélectionner
if ($profil=='homme') {$motcle="slips";}
else
$motcle="soutien-gorge";Maintenant, imaginons que je souhaite insérer cette valeur parmi les mots clés de la page... afin de faire une page à mots-clés dynamiques.
Problème: La variable motcle est une variable locale. Je ne peux donc l'utiliser en dehors de la fonction. J'ai donc essayé d'en faire une variable globale ainsi:
Code : Tout sélectionner
$motcle="slip";
global $motcleGlobal;
$motcleGlobal = $motcle;echo $motcleGlobal après la fonction où la variable a été définie, j'ai bien "slip" ou "soutien-gorge" qui s'affiche. Par contre, si je fais un echo $motcleGlobal avant la fonction, plus rien ne s'affiche. Comme vous l'avez compris, je veux afficher cette variable dans la balise "keywords", c'est à dire dans le head de la page. Je pourrais placer la fonction dans le head, avant la balise keywords, mais j'aimerais une autre solution. Car ma véritable fonction appelle des include et je ne souhaite rien placer avant mes balises title, keywords, etc. (question de référencement).
Qui peut me proposer une autre solution? Si possible, je ne souhaiterais pas utiliser de variable session car je n'ai besoin de cette variable que dans une seule et même page. :rougit:
Un grand merci d'avance de votre aide.