PHP variable importée via include

Résolu/Fermé
Signaler
Messages postés
600
Date d'inscription
dimanche 8 novembre 2009
Statut
Membre
Dernière intervention
21 juin 2015
-
Messages postés
600
Date d'inscription
dimanche 8 novembre 2009
Statut
Membre
Dernière intervention
21 juin 2015
-
Bonjour,

J'aimerais récupérer un paramètre d'un fichier dans un deuxième via un include.

j'ai essayé comme ça

fichier principal:

<?php echo $Mavariable; ?>

plus bas dans le fichier je fais un include d'une page qui contient

<?php $Mavariable="bla bla lma..."?>

mais ça ne fonctionne pas. Pourriez-vous m'aider ?

1 réponse

Messages postés
18620
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
5 décembre 2021
4 340
Salut,

Dis-toi (et c'est le cas) que le PHP s'exécute de haut en bas.
Lorsque tu fais appel à la variable avec echo, la variable n'est pas encore déclarée.
Ton fichier doit être inclus avant l' echo.
La pensée mène le monde.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 41989 internautes nous ont dit merci ce mois-ci

Messages postés
600
Date d'inscription
dimanche 8 novembre 2009
Statut
Membre
Dernière intervention
21 juin 2015
245
Je vais essayer de mettre le contenu du fichier inclus dans une 2ème variable.

Comme ça je pourrais garder le <head> en haut, mettre le include dans le head

et appeler la deuxième variable "contenu" plus bas dans la page.
Messages postés
600
Date d'inscription
dimanche 8 novembre 2009
Statut
Membre
Dernière intervention
21 juin 2015
245
J'ai testé, ça fonctionne bien (en modifiant les guillements " en ' à l'intérieur de la variable "contenu")

il subsiste un petit problème !!!

le fichier inclus est encodé en UTF_8 ce qui me permet de ne pas réécrire les accents du contenu.
En déplaçant le include dans le header, ça rajoute une bande blanche en haut du site. (alors qu'avant la bande blanche ne se remarquait pas au milieu de la page)

Si j'encode le fichier inclus en ANSI, la bande blanche disparait et les accents aussi. :-[

ça fait un moment que je cherche, à tel point que j'envisage de rajouter un include vide dans les header des autres catégories du site pour avoir cette satanée bande blanche partout, dans un soucis d'uniformité.
Messages postés
600
Date d'inscription
dimanche 8 novembre 2009
Statut
Membre
Dernière intervention
21 juin 2015
245
bon ben finalement j'ai trouvé ^^

le fichier inclus est en ANSI et j'encode lee variables comme ceci :
echo utf8_encode($contenu);
Messages postés
18620
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
5 décembre 2021
4 340
Le plus simple serait de faire correspondre l'encodage de tes fichiers et de l'indiquer dans la balise meta afin que le navigateur l'utilise.
Messages postés
600
Date d'inscription
dimanche 8 novembre 2009
Statut
Membre
Dernière intervention
21 juin 2015
245
Je me suis un peu embrouillé dans mon dernier commentaire, je me suis rendu compte que l'encodage du fichier inclus importe peu ! J'ai essayé avec UTF8 et ANSI ,et si je ne met pas utf8_encode, les accents sont remplacés par des "?".
Pourtant j'utilise bien la balise:
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
en tout premier dans le header.

Je ne vais pas chercher plus, vu que ça fonctionne comme ça^^
Merci pour ton aide.