problème include

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : problème include

Re: problème include

par olivierg » 11 juil. 2011, 10:50

exactement.

seulement.. ça ne fonctionne pas !

ps : j'ai trouvé mon soucis, en fait dans le header, je n'ai pas besoin de récupérer la variable dans un $_GET, je peux directement faire un echo c'est vrai, merci bcp !

Re: problème include

par Ryle » 11 juil. 2011, 10:23

Pourquoi modifier la super globale ? Comme l'indique olivierg, lorsque tu inclus un script dans une page php, ce dernier interprête l'ensemble du code comme s'il ne s'agissait que d'un seul et même script :

donc si dans ta page tu déclares une variable :
$page_title = "Systechpatches";
include ('../../header.php');
dans tes pages incluses après la déclaration, tu peux exploiter cette variable :
echo $page_title;
Elle n'est pas passée en get ou en post, elle est simplement déclarée "plus haut" dans le script global qui est exécuté par php :)

Re: problème include

par xTG » 11 juil. 2011, 09:22

$_GET['pagetitle']...
Là c'est un souci de logique... :non:

Code : Tout sélectionner

$_GET['pagetitle'] = "Systechpatches"; include ('../../header.php'); 
Mais c'est assez moche de modifier le tableau super-global.

Re: problème include

par olivierg » 11 juil. 2011, 09:01

salut

j'ai testé de définir une variable avant le include, et ça ne fonctionne pas.
quand je fais un echo de la variable dans la page header, la variable est vide.

sinon pourquoi je fais ça, tout simplement car actuellement sur chacune de mes pages, je fais un include du header du site, et quand je change de page, suivant le type de page, le header doit afficher un titre correspondant à la page en cours, donc j'aimerais simplement envoyer une variable depuis ma "page" vers le "header" en haut de la page (qui est un include).

PI, j'ai testé ça :

dans ma page :

$page_title = "Systechpatches";
include ('../../header.php');

et dans mon header :

$page_title = $_GET['page_title'];
echo $page_title;

rien ne s'affiche.

cdt, merci de ton aide

Re: problème include

par epommate2 » 08 juil. 2011, 18:18

A priori, on ne peut pas mettre de paramètres dans un include.

Par contre, toutes les variables qui existent avant le include existerons lors de l'inclusion.

Si tu fais
$title = $_GET['title']; 
include("../../header.php");
alors, $title sera défini à l'intérieur de header.php

Ce n'est toutefois pas une bonne pratique, et j'imagine que ton problème doit pouvoir se régler plus simplement et plus proprement.

Donc... pourquoi veux-tu faire cela ?

problème include

par olivierg » 08 juil. 2011, 17:42

Bonjour,

J'essaye de faire un truc qui me parraît simple mais cela ne fonctionne pas, j'imagine qu'il doit y avoir un "truc" pour que cela fonctionne.. pouvez-vous m'aider ? je vous en serait reconnaissant :)

en fait j'ai tout bêtement un include dans ma page :

include ('../../header.php');

j'aimerais passer un paramètre à cet include, comme ceci :

include ('../../header.php?title=Systechpatches');

mais cela ne fonctionne pas et m'envoie une erreur du type :

Warning: include(../../header.php?title=Systechpatches) [function.include]: failed to open stream: No such file or directory in /app/ubskonsole/mods/supervision/systechpatches.php on line 7

alors que si j'appelle la page directement dans le browser avec le paramètre (header.php?title=Systechpatches), ça fonctionne très bien, ma page s'affiche bien, et m'affiche bien mon paramètre (je fais un simple echo de la variable récupérée avec un $_GET['title'] qui s'affiche bien)

qu'est-ce que je fais de mal ?

merci par avance,