Bonsoir!
mon modele de page =
include ("/home/xxx/www/includes/paths.php");
include ("/home/xxx/www/includes/head.php");
include ("/home/xxx/www/includes/corps.php");
include ("/home/xxx/www/includes/pied.php");
les cvariables recuperees dans le premier include
ne sont pas vues par les
autres fichiers includes
quelle est l'explication
et surtout quelle est la solution ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Olivier Miakinen
include ("/home/xxx/www/includes/paths.php"); include ("/home/xxx/www/includes/head.php"); include ("/home/xxx/www/includes/corps.php"); include ("/home/xxx/www/includes/pied.php");
les variables recuperees dans le premier include ne sont pas vues par les autres fichiers includes
J'ai du mal à le croire. Ce ne serait pas plutôt qu'elles ne sont pas vues par les *fonctions* définies dans les autres fichiers inclus, faute de les avoir rendues visibles par « global » ?
quelle est l'explication et surtout quelle est la solution ?
Si mon idée n'était pas la bonne, tu vas devoir nous montrer un exemple de code qui ne marche pas.
include ("/home/xxx/www/includes/paths.php");
include ("/home/xxx/www/includes/head.php");
include ("/home/xxx/www/includes/corps.php");
include ("/home/xxx/www/includes/pied.php");
les variables recuperees dans le premier include
ne sont pas vues par les autres fichiers includes
J'ai du mal à le croire. Ce ne serait pas plutôt qu'elles ne sont pas
vues par les *fonctions* définies dans les autres fichiers inclus, faute
de les avoir rendues visibles par « global » ?
quelle est l'explication
et surtout quelle est la solution ?
Si mon idée n'était pas la bonne, tu vas devoir nous montrer un exemple
de code qui ne marche pas.
include ("/home/xxx/www/includes/paths.php"); include ("/home/xxx/www/includes/head.php"); include ("/home/xxx/www/includes/corps.php"); include ("/home/xxx/www/includes/pied.php");
les variables recuperees dans le premier include ne sont pas vues par les autres fichiers includes
J'ai du mal à le croire. Ce ne serait pas plutôt qu'elles ne sont pas vues par les *fonctions* définies dans les autres fichiers inclus, faute de les avoir rendues visibles par « global » ?
quelle est l'explication et surtout quelle est la solution ?
Si mon idée n'était pas la bonne, tu vas devoir nous montrer un exemple de code qui ne marche pas.
Thief13
include ("/home/xxx/www/includes/paths.php"); include ("/home/xxx/www/includes/head.php"); include ("/home/xxx/www/includes/corps.php"); include ("/home/xxx/www/includes/pied.php");
les variables recuperees dans le premier include ne sont pas vues par les autres fichiers includes
J'ai du mal à le croire. Ce ne serait pas plutôt qu'elles ne sont pas vues par les *fonctions* définies dans les autres fichiers inclus, faute de les avoir rendues visibles par « global » ?
quelle est l'explication et surtout quelle est la solution ?
Si mon idée n'était pas la bonne, tu vas devoir nous montrer un exemple de code qui ne marche pas.
Vérifie que tu ne les réassigne pas dans un autres fichier que tu inclu, ou dans un teste d'égalité (= au lieu de ==) ça m'est déjà arrivé...
En plus, si ce sont des variable qui sont sensé contenir des chemis vers des fichiers, il vaux plutot mieux que tu utilise de constante pour etre sur de ne pas te les faire modifier d'une manière au d'une autre par l'utilisateur.
include ("/home/xxx/www/includes/paths.php");
include ("/home/xxx/www/includes/head.php");
include ("/home/xxx/www/includes/corps.php");
include ("/home/xxx/www/includes/pied.php");
les variables recuperees dans le premier include
ne sont pas vues par les autres fichiers includes
J'ai du mal à le croire. Ce ne serait pas plutôt qu'elles ne sont pas
vues par les *fonctions* définies dans les autres fichiers inclus, faute
de les avoir rendues visibles par « global » ?
quelle est l'explication
et surtout quelle est la solution ?
Si mon idée n'était pas la bonne, tu vas devoir nous montrer un exemple
de code qui ne marche pas.
Vérifie que tu ne les réassigne pas dans un autres fichier que tu inclu,
ou dans un teste d'égalité (= au lieu de ==) ça m'est déjà arrivé...
En plus, si ce sont des variable qui sont sensé contenir des chemis vers
des fichiers, il vaux plutot mieux que tu utilise de constante pour etre
sur de ne pas te les faire modifier d'une manière au d'une autre par
l'utilisateur.
include ("/home/xxx/www/includes/paths.php"); include ("/home/xxx/www/includes/head.php"); include ("/home/xxx/www/includes/corps.php"); include ("/home/xxx/www/includes/pied.php");
les variables recuperees dans le premier include ne sont pas vues par les autres fichiers includes
J'ai du mal à le croire. Ce ne serait pas plutôt qu'elles ne sont pas vues par les *fonctions* définies dans les autres fichiers inclus, faute de les avoir rendues visibles par « global » ?
quelle est l'explication et surtout quelle est la solution ?
Si mon idée n'était pas la bonne, tu vas devoir nous montrer un exemple de code qui ne marche pas.
Vérifie que tu ne les réassigne pas dans un autres fichier que tu inclu, ou dans un teste d'égalité (= au lieu de ==) ça m'est déjà arrivé...
En plus, si ce sont des variable qui sont sensé contenir des chemis vers des fichiers, il vaux plutot mieux que tu utilise de constante pour etre sur de ne pas te les faire modifier d'une manière au d'une autre par l'utilisateur.
Olivier Miakinen
[...] il vaux plutot mieux que tu utilise de constante pour etre sur de ne pas te les faire modifier d'une manière au d'une autre par l'utilisateur.
Très juste. D'une manière générale, et surtout entre d'un include() à un autre, utiliser des constantes pour ce que ne changera effectivement pas est une excellente idée. De plus, elles seront automatiquement visibles, même dans les fonctions.
[...] il vaux plutot mieux que tu utilise de constante pour etre
sur de ne pas te les faire modifier d'une manière au d'une autre par
l'utilisateur.
Très juste. D'une manière générale, et surtout entre d'un include() à un
autre, utiliser des constantes pour ce que ne changera effectivement pas
est une excellente idée. De plus, elles seront automatiquement visibles,
même dans les fonctions.
[...] il vaux plutot mieux que tu utilise de constante pour etre sur de ne pas te les faire modifier d'une manière au d'une autre par l'utilisateur.
Très juste. D'une manière générale, et surtout entre d'un include() à un autre, utiliser des constantes pour ce que ne changera effectivement pas est une excellente idée. De plus, elles seront automatiquement visibles, même dans les fonctions.
F.G.
[...] il vaux plutot mieux que tu utilise de constante pour etre sur de ne pas te les faire modifier d'une manière au d'une autre par l'utilisateur.
Très juste. D'une manière générale, et surtout entre d'un include() à un autre, utiliser des constantes pour ce que ne changera effectivement pas est une excellente idée. De plus, elles seront automatiquement visibles, même dans les fonctions.
Merci pour ces réponses avisées Mon problème vient du fait que je fait un include absolu avec : include ("http://www.xxx.com/includes/chemins.php meme si xxx.com est mon site, ça eh bien l'inclusion n'est pas satisfaisante ...
[...] il vaux plutot mieux que tu utilise de constante pour etre
sur de ne pas te les faire modifier d'une manière au d'une autre par
l'utilisateur.
Très juste. D'une manière générale, et surtout entre d'un include() à un
autre, utiliser des constantes pour ce que ne changera effectivement pas
est une excellente idée. De plus, elles seront automatiquement visibles,
même dans les fonctions.
Merci pour ces réponses avisées
Mon problème vient du fait que je fait un include absolu avec :
include ("http://www.xxx.com/includes/chemins.php
meme si xxx.com est mon site, ça eh bien l'inclusion n'est pas
satisfaisante ...
[...] il vaux plutot mieux que tu utilise de constante pour etre sur de ne pas te les faire modifier d'une manière au d'une autre par l'utilisateur.
Très juste. D'une manière générale, et surtout entre d'un include() à un autre, utiliser des constantes pour ce que ne changera effectivement pas est une excellente idée. De plus, elles seront automatiquement visibles, même dans les fonctions.
Merci pour ces réponses avisées Mon problème vient du fait que je fait un include absolu avec : include ("http://www.xxx.com/includes/chemins.php meme si xxx.com est mon site, ça eh bien l'inclusion n'est pas satisfaisante ...
Olivier Miakinen
Mon problème vient du fait que je fait un include absolu avec : include ("http://www.xxx.com/includes/chemins.php meme si xxx.com est mon site, ça eh bien l'inclusion n'est pas satisfaisante ...
Ben oui, c'est logique. Lorsque tu passes par une requête HTTP pour inclure ton fichier, ça lance une deuxième instance de l'interpréteur PHP appelé par Apache (ou tout autre serveur httpd), et tu inclus le résultat de l'exécution, non pas le code source. Si tu voulais que ça marche comme ça, il faudrait que chemins.php donne en sortie non pas du HTML, mais un deuxième niveau de PHP !
Par exemple, ce serait un truc comme ça :
<?php echo "<?phpn"; echo ... ... echo "?>n"; ?>
Pas très facile à maintenir, et qui plus est pas très malin si tes variables contiennent des mots de passe ou autres données sensibles.
Mon problème vient du fait que je fait un include absolu avec :
include ("http://www.xxx.com/includes/chemins.php
meme si xxx.com est mon site, ça eh bien l'inclusion n'est pas
satisfaisante ...
Ben oui, c'est logique. Lorsque tu passes par une requête HTTP pour
inclure ton fichier, ça lance une deuxième instance de l'interpréteur
PHP appelé par Apache (ou tout autre serveur httpd), et tu inclus le
résultat de l'exécution, non pas le code source. Si tu voulais que ça
marche comme ça, il faudrait que chemins.php donne en sortie non pas du
HTML, mais un deuxième niveau de PHP !
Par exemple, ce serait un truc comme ça :
<?php
echo "<?phpn";
echo ...
...
echo "?>n";
?>
Pas très facile à maintenir, et qui plus est pas très malin si tes
variables contiennent des mots de passe ou autres données sensibles.
Mon problème vient du fait que je fait un include absolu avec : include ("http://www.xxx.com/includes/chemins.php meme si xxx.com est mon site, ça eh bien l'inclusion n'est pas satisfaisante ...
Ben oui, c'est logique. Lorsque tu passes par une requête HTTP pour inclure ton fichier, ça lance une deuxième instance de l'interpréteur PHP appelé par Apache (ou tout autre serveur httpd), et tu inclus le résultat de l'exécution, non pas le code source. Si tu voulais que ça marche comme ça, il faudrait que chemins.php donne en sortie non pas du HTML, mais un deuxième niveau de PHP !
Par exemple, ce serait un truc comme ça :
<?php echo "<?phpn"; echo ... ... echo "?>n"; ?>
Pas très facile à maintenir, et qui plus est pas très malin si tes variables contiennent des mots de passe ou autres données sensibles.
Thief13
Merci pour ces réponses avisées Mon problème vient du fait que je fait un include absolu avec : include ("http://www.xxx.com/includes/chemins.php meme si xxx.com est mon site, ça eh bien l'inclusion n'est pas satisfaisante ...
C'est sur que include ("/home/xxx/www/includes/paths.php"); de ton premier post et include ("http://www.xxx.com/includes/chemins.php"); n'ont strictement rien à voir, le premier ouvre le fichier directement sur le serveur et le deuxieme l'execute et révupère la sortie...
Merci pour ces réponses avisées
Mon problème vient du fait que je fait un include absolu avec :
include ("http://www.xxx.com/includes/chemins.php
meme si xxx.com est mon site, ça eh bien l'inclusion n'est pas
satisfaisante ...
C'est sur que include ("/home/xxx/www/includes/paths.php"); de ton
premier post et include ("http://www.xxx.com/includes/chemins.php");
n'ont strictement rien à voir, le premier ouvre le fichier directement
sur le serveur et le deuxieme l'execute et révupère la sortie...
Merci pour ces réponses avisées Mon problème vient du fait que je fait un include absolu avec : include ("http://www.xxx.com/includes/chemins.php meme si xxx.com est mon site, ça eh bien l'inclusion n'est pas satisfaisante ...
C'est sur que include ("/home/xxx/www/includes/paths.php"); de ton premier post et include ("http://www.xxx.com/includes/chemins.php"); n'ont strictement rien à voir, le premier ouvre le fichier directement sur le serveur et le deuxieme l'execute et révupère la sortie...